Re: how to export a symbol so that I can use it in a module

Tomas Szepe (szepe@pinerecords.com)
Mon, 11 Nov 2002 23:02:46 +0100


> I've added a function "create_tcp_port_number" to net/core/utils.c
> like this:
>
> int create_tcp_port_number(void)
> {
> /* blah blah */
> }
> EXPORT_SYMBOL(create_tcp_port_number);
>
> in include/linux/net.h I added:
> extern int create_tcp_port_number(void);
>
> So, now in net/ipv6/tcp_ipv6.c I used this 'create_tcp_port_number'
> function. I'm compiling the kernel with ipv6 as a module. And that's
> where I get the problem. In the last stage, the makefile does a
> depmod and then I get:
> depmod: *** Unresolved symbols in /lib/modules/2.4.19/kernel/net/ipv6/ipv6.o
> depmod: create_tcp_port_number
>
> I'm really out of ideas what can be the cause of this. It must be
> something trivial, but I cannot find the solution. Anyone who can
> help me?

Make sure you're including <linux/module.h> into utils.c and that
utils.o is among export-objs in the makefile.

--
Tomas Szepe <szepe@pinerecords.com>
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" 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.tux.org/lkml/