Problem in EXPORT_SYMBOL.. Please Help!

Dhirendra Pal Singh (list@actiswitch.com)
Tue, 24 Dec 2002 08:20:41 -0800


Hi All
I am trying to resolve the problem of EXPORT_SYMBOL. I have raised this
question on newbies kernel list but no one replied. Hence I am posting
it here.
I am using kernel 2.4.18-14. Below is the listing of a simple test code.

**************************************
/*main.c*/

#include <linux/kernel.h>
#include <linux/module.h>

#if CONFIG_MODVERSION == 1
#define MODERVSION
#include <linux/modversions.h>
#endif

int print_func()
{
printk("Entry point.\n");
return 0;
}

EXPORT_SYMBOL(print_func);

int init_module()
{
print_func();
return 0;
}

void cleanup()
{
printk("End of story.\n");
}

********************************************

********************************************
/*Makefile*/

export-objs := main.o
CC=gcc
MAKE = make
KERNELDIR = /usr/src/linux-2.4.18-14
MODCFLAGS := --save-temps -Wall -D__KERNEL__ -DMODULE -DLINUX -DMODVERSIONS

main.o: main.c
$(CC) $(MODCFLAGS) -I$(KERNELDIR)/include -c main.c

clean:
rm -fr *.o *.i *.s

***********************************************

And on compiling the error is as follows...

gcc --save-temps -Wall -D__KERNEL__ -DMODULE -DLINUX -DMODVERSIONS -I/usr/src/linux-2.4.18-14/include -c main.c
main.c:15: parse error before "this_object_must_be_defined_as_export_objs_in_the_Makefile"
main.c:15: warning: type defaults to `int' in declaration of `this_object_must_be_defined_as_export_objs_in_the_Makefile'
main.c:15: warning: data definition has no type or storage class

The error says export_ojbs must be defined. As you can see I have already defined them in the Makefile.

Pleaes help. I am kind of stucked in my project.

Thanks in advance..
Dp

make: *** [main.o] Error 1

-
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/