Sudo Code for kernel module compilation using KBUILD SYSTEM. If module versioing is enabled. step1. create a .tmp_<moudule name>.o file from <module name>.c using gcc. step2. if objdump -h .tmp_<module name>.o | grep -q __ksymtab; then gcc -D GENKSYMS ..............|scripts/genksyms/genksyms > .tmp_<module name>.ver ld -m elf_i386 -r -o <module name>.o .tmp_<module name>.o .tmp_<module name>.ver else mv -f .tmp_<module name>.o <module name>.o Step 3. LINUXDIR/scripts/mod/modpost .............. vmlinux <module name>.o #the above command create file <module name>.mod.c Step 4. gcc ....................... - o <module name>.mod.o <module name>.mod.c Step 5. ld -m elf_i386 -r -o <module name>.ko <module name>.o <module name>.mod.o In step 2 it is checking for __ksymtab on .tmp_<module name>.o header. Can anybody tell me when __ksymtab in included in module object header. Is it only added when we have EXPORT_SYMBOL Macro in kernel module code or any other reason. And what is .tmp_<module name>.ver file. Chat on a cool, new interface. No download required. Go to http://in.messenger.yahoo.com/webmessengerpromo.php - To unsubscribe from this list: send the line "unsubscribe linux-kbuild" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html