From mboxrd@z Thu Jan 1 00:00:00 1970 From: greg@kroah.com (Greg KH) Date: Thu, 11 Aug 2016 21:40:46 +0200 Subject: Kernel module compilation errors In-Reply-To: References: Message-ID: <20160811194046.GA1283@kroah.com> To: kernelnewbies@lists.kernelnewbies.org List-Id: kernelnewbies.lists.kernelnewbies.org 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 > #include > > 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