> On Thu, Aug 11, 2016 at 07:25:45PM +0000, Matt M wrote: > > I am just getting started with kernel module development, and I can't get > > anything to compile. > > > > I get the following errors: > > > > In file included from main.c:1:0: > > /usr/src/linux/include/linux/init.h:142:13: error: expected ?=?, ?,?, ?;?, > > ?asm? or ?__attribute__? before ?load_default_modules? > > ?void __init load_default_modules(void); > > ? ? ? ? ? ? ?^~~~~~~~~~~~~~~~~~~~ > > /usr/src/linux/include/linux/init.h:143:12: error: expected ?=?, ?,?, ?;?, > > ?asm? or ?__attribute__? before ?init_rootfs? > > ?int __init init_rootfs(void); > > ? ? ? ? ? ? ^~~~~~~~~~~ > > /usr/src/linux/include/linux/init.h:285:13: error: expected ?=?, ?,?, ?;?, > > ?asm? or ?__attribute__? before ?parse_early_param? > > ?void __init parse_early_param(void); > > ? ? ? ? ? ? ?^~~~~~~~~~~~~~~~~ > > /usr/src/linux/include/linux/init.h:286:13: error: expected ?=?, ?,?, ?;?, > > ?asm? or ?__attribute__? before ?parse_early_options? > > ?void __init parse_early_options(char *cmdline); > > > > > > The errors go on and on, but the majority look like that. > > > > My code: > > > > #include <linux/init.h> > > #include <linux/module.h> > > > > int main() { > > return 0; > > } > > > > > > The compile command: > > gcc -I /usr/src/linux/include/ main.c > > That's not how you compile a Linux kernel module, sorry. > > Please read the very good documentation for how to set up a Makefile for > building a kernel module. It's in the kernel's Documentation/ > directory. > > best of luck, > > greg k-h Alternatively, try this doc on TLKD: http://www.tldp.org/LDP/lkmpg/2.6/html/lkmpg.html it's kind of outdated, but some code there still compile against the newest kernel. good luck, Ruan. _______________________________________________ Kernelnewbies mailing list Kernelnewbies@xxxxxxxxxxxxxxxxx https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies