Exporting symbols between modules

Exporting symbols between modules

am 24.08.2005 09:28:08 von Sergio Paracuellos

Hi all,

I'm new in this list and I have some problems exporting symbols in a
module to see them in other module.

In the module I want to export the symbol I do:

tList list;
EXPORT_SYMBOL(list);

I compile it and install without any problem.

And in the module I want to use them I declare list with "extern"
prototype:

extern tList list;

When I compile the module It says me that list is undefined, and I don't
know what I am doing wrong.

Does anybody know what is happening?

Maybe a makefile example would be appreciated...

Thanks in advance.

Regards,

Sergio

-
To unsubscribe from this list: send the line "unsubscribe linux-newbie" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.linux-learn.org/faqs

Re: Exporting symbols between modules

am 24.08.2005 16:59:22 von simon guinot

hello

On Wed, 24 Aug 2005 09:28:08 +0200
Sergio Paracuellos wrote:

> Hi all,
>
> I'm new in this list and I have some problems exporting symbols in a
> module to see them in other module.
>
> In the module I want to export the symbol I do:
>
> tList list;
> EXPORT_SYMBOL(list);

ok... you've better to use the EXPORT_SYMBOL_NOVERS macro to export the symbol whiteout the versioning information...
don't forget to define EXPORT_SYMTAB before include module.h...
you can add a -DEXPORT_SYMTAB in your Makefile or a #define EXPORT_SYMTAB before
#include in your source file...

>
> I compile it and install without any problem.
>
> And in the module I want to use them I declare list with "extern"
> prototype:
>
> extern tList list;
>
> When I compile the module It says me that list is undefined, and I don't
> know what I am doing wrong.

a compilation error or a loading error ?
are you sure to have well defined the type tList in your "client" module ?
may be a shareed header between your modules is missing :)

regards

simon
-
To unsubscribe from this list: send the line "unsubscribe linux-newbie" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.linux-learn.org/faqs

Re: Exporting symbols between modules

am 24.08.2005 17:15:13 von Sergio Paracuellos

El mié, 24-08-2005 a las 16:59 +0200, simon guinot escribió:
> hello
>=20
> On Wed, 24 Aug 2005 09:28:08 +0200
> Sergio Paracuellos wrote:
>=20
> > Hi all,
> >=20
> > I'm new in this list and I have some problems exporting symbols in =
a
> > module to see them in other module.
> >=20
> > In the module I want to export the symbol I do:
> >=20
> > tList list;
> > EXPORT_SYMBOL(list);
>=20
> ok... you've better to use the EXPORT_SYMBOL_NOVERS macro to export t=
he symbol whiteout the versioning information...
> don't forget to define EXPORT_SYMTAB before include module.h...
> you can add a -DEXPORT_SYMTAB in your Makefile or a #define EXPORT_SY=
MTAB before=20
> #include in your source file...

Thanks, I solve it because it was a Makefile problem.

I was trying to compile two modules with different Makefiles. When I do
only one Makefile with

obj-m +=3D module1
obj-m +=3D module2

the problem dissapears.

Thanks to all.

Regards,

Sergio
>=20
> >=20
> > I compile it and install without any problem.
> >=20
> > And in the module I want to use them I declare list with "extern"
> > prototype:
> >=20
> > extern tList list;
> >=20
> > When I compile the module It says me that list is undefined, and I =
don't
> > know what I am doing wrong.
>=20
> a compilation error or a loading error ?
> are you sure to have well defined the type tList in your "client" mod=
ule ?
> may be a shareed header between your modules is missing :)=20
>=20
> regards
>=20
> simon
> -
> To unsubscribe from this list: send the line "unsubscribe linux-newbi=
e" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.linux-learn.org/faqs

-
To unsubscribe from this list: send the line "unsubscribe linux-newbie"=
in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.linux-learn.org/faqs