Kernel module compilation errors

Matt M cmorrow132 at gmail.com
Fri Aug 12 13:46:00 EDT 2016


Seems like My link didn;'t paste in on the last message -
http://www.tldp.org/LDP/lkmpg/2.6/lkmpg.pdf

On Fri, Aug 12, 2016 at 12:44 PM Matt M <cmorrow132 at gmail.com> wrote:

> I actually found this, which was exactly what I needed.
>
> On Thu, Aug 11, 2016 at 4:50 PM Matt M <cmorrow132 at gmail.com> wrote:
>
>> Thank you
>>
>> On Thu, Aug 11, 2016 at 7:40 PM Greg KH <greg at kroah.com> wrote:
>>
>>> 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
>>>
>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.kernelnewbies.org/pipermail/kernelnewbies/attachments/20160812/8312ddcc/attachment.html 


More information about the Kernelnewbies mailing list