�����,
���� ����� ��� �� ����� - �� �� �� ��������. �� ���� ���� lkml.
�� �� �� �� ������, �� �� ��������� �������� �������� ������ :
A
filename: a.o
description: "tralala A"
author: "tralala A"
license: "GPL"
B
filename: b.o
description: "tralala B"
author: "tralala B"
license: "tralala B - ne GPL license"
B �������� sing_me �� �.
��� �� ������� �� ���������� � ����� �, �� ������� ���������� ���������:
b.o: unresolved symbol sing_me
b.o: Note: modules without a GPL compatible license cannot use GPLONLY_
symbols
�������� ��� �� � GPL-a, � � unresolved symbol-a, �� ���������� �� ���� ��
�� ������ �����.
�� ������, �� ���� � 100% ����, ������ ������ �� ��� �������
EXPORT_SYMBOL_GPL, � � ����������� ���� warning ����� �� ���� ���.
��� ��� � ������ � NVidia-�� ����������� �� �����, �� ���� ������� �� � ��
���� kernel ( +patch).
P.S. ��� ������� modutils < 2.4.10 ���� �� ������� ������� ��������� ��
������� � �� �� ������� ��������.
-------------------------------------------------------------------------------------------A(GPL)
#include <linux/config.h>
#include <linux/version.h>
#include <linux/module.h>
#include <linux/string.h>
#include <linux/init.h>
#include <linux/kernel.h>
static int __init init_a(void)
{
printk(KERN_INFO __FILE__" : go go go...A\n");
return 0;
}
static void __exit cleanup_a(void)
{
printk(KERN_INFO __FILE__": bye A\n");
}
void sing_me(){
printk(KERN_INFO __FILE__": tralala from GPL A\n");
}
EXPORT_SYMBOL_GPL(sing_me);
/* --------------------------------------------------------------------- */
MODULE_AUTHOR("tralala A");
MODULE_DESCRIPTION("tralala A");
MODULE_LICENSE("GPL");
/* --------------------------------------------------------------------- */
module_init(init_a);
module_exit(cleanup_a);
-----------------------------------------------------------------
--------------------------------------------------------------B (�� GPL)
#include <linux/config.h>
#include <linux/version.h>
#include <linux/module.h>
#include <linux/string.h>
#include <linux/init.h>
#include <linux/kernel.h>
static int __init init_b(void)
{
printk(KERN_INFO __FILE__ "go go go ...B\n");
sing_me();
return 0;
}
static void __exit cleanup_b(void)
{
printk(KERN_INFO __FILE__"bye B\n");
}
/* --------------------------------------------------------------------- */
MODULE_AUTHOR("tralala B");
MODULE_DESCRIPTION("tralala B");
MODULE_LICENSE("tralala B - ne GPL license");
/* --------------------------------------------------------------------- */
module_init(init_b);
module_exit(cleanup_b);
______________________________________________________________
�� ������� 13 ������� 2001 13:35, ��� ���������:
> > �� ���� ���� ���� ���� �� � ��������. Non-GPL �����, ����� ��
> > ������ ��
> > ������� "EXPORT_SYMBOL_GPL() " symbol ���� warning ���� � �� �
> > ������ � ������.
>
> ne e taka.
> export_symbol_gpl() oznachawa: "tozi kernel simwol ne moje da se polzwa
> ot nikoj modul chijto MODULE_LICENSE() ne e GPL-sywmestim"
>
> > Warning: loading /lib/modules/2.4.10/misc/amod.o will taint
> > the kernel:
> > non-GPL license - Proprietary
>
> tozi warning oznachawa che modula amod.o nqma MODULE_LICENSE() ili ima
> MODULE_LICENSE() ne e GPL-sywmestim, a ne che se e opital da se linkne s
> simwol kojto e za GPLONLY use.
>
> razgledajte toq post w lkml predi da diskutirate tiq wyprosi molq:
> http://kt.zork.net/kernel-traffic/kt20011029_139.html#1
>
> BR,
> Boyan
> ===========================================================================
> A mail-list of Linux Users Group - Bulgaria (bulgarian linuxers)
> http://www.linux-bulgaria.org/ Hosted by Internet Group Ltd. - Stara Zagora
===========================================================================
A mail-list of Linux Users Group - Bulgaria (bulgarian linuxers)
http://www.linux-bulgaria.org/ Hosted by Internet Group Ltd. - Stara Zagora