<div dir="ltr">
Hello there,<br>
I am using Buildroot to compile the kernel for my ARM target, which is a
 Beaglebone black. This part works. Now I would like to use the 
crosscompiler available from the output of the buildroot in order to 
compile a "Hello World" Kernel module. I have already checked a regular c
 file Hello World and it crosscompiles on host and runs on the target 
correctly. I am having problems with setting up the whole environment 
for the kernel module development. There are many tutorials available 
for kernel modules development, but they assume developing on the 
target/ host. I am able to compile a native host x86 kernel module, that
 works. <br>
<br><div>
I am still missing some dependencies when trying to crosscompile for the
 Beagle, I am not sure either I need to build some further packages, but
 when doing xconfig I think I checked everything related to the kernel 
modules. At the moment I have the following Makefile: <br></div><div><br></div><div>
<pre class="gmail-bbcodeblock" dir="ltr" style="padding:3px;border:1px inset;width:98%;height:194px;text-align:left;overflow:auto">obj-m    := simp.o 
KERNELDIR ?= /home/lukasz/brl/Machine/beaglebone/build/linux-headers-a75d8e93056181d512f6c818e8627bd4554aaf92
PWD       := $(shell pwd)
 
all: default
 
default:
        $(MAKE) -C $(KERNELDIR) M=$(PWD) modules

clean:
        rm -rf *.o *~ core .depend .*.cmd *.ko *.mod.c .tmp_versions</pre>

</div><div>
And the example module code (simp.c): <br></div><div>
<pre class="gmail-bbcodeblock" dir="ltr" style="padding:3px;border:1px inset;width:98%;height:306px;text-align:left;overflow:auto">#include <linux/init.h>
#include <linux/module.h>

MODULE_LICENSE("Dual BSD/GPL");

static int hello_init(void)
{
        printk(KERN_ALERT "Hello, world\n");
        return 0;
}

static void hello_exit(void)
{
        printk(KERN_ALERT "Goodbye, cruel world\n");
}

module_init(hello_init);
module_exit(hello_exit);</pre>

</div><div>
When trying to make: <br></div><div>
<pre class="gmail-bbcodeblock" dir="ltr" style="padding:3px;border:1px inset;width:98%;height:34px;text-align:left;overflow:auto">make ARCH=arm CROSS_COMPILE=arm-buildroot-linux-uclibcgnueabihf- -I/home/lukasz/brl/Machine/beaglebone/build/linux-a75d8e93056181d512f6c818e8627bd4554aaf92/include -I/home/lukasz/brl/Machine/beaglebone/build/linux-a75d8e93056181d512f6c818e8627bd4554aaf92 -I/home/lukasz/brl/Machine/beaglebone/build/linux-a75d8e93056181d512f6c818e8627bd4554aaf92/include/generated/autoconf.h</pre>

</div><div>
I get the following error: <br></div><div>
<pre class="gmail-bbcodeblock" dir="ltr" style="padding:3px;border:1px inset;width:98%;height:322px;text-align:left;overflow:auto">make -C /home/lukasz/brl/Machine/beaglebone/build/linux-headers-a75d8e93056181d512f6c818e8627bd4554aaf92 M=/tmp/test modules
make[1]: Entering directory '/home/lukasz/brl/Machine/beaglebone/build/linux-headers-a75d8e93056181d512f6c818e8627bd4554aaf92'

  WARNING: Symbol version dump ./Module.symvers
           is missing; modules will have no dependencies and modversions.

  CC [M]  /tmp/test/simp.o
In file included from <command-line>:0:0:
././include/linux/kconfig.h:4:32: fatal error: generated/autoconf.h: No such file or directory
 #include <generated/autoconf.h>
                                ^
compilation terminated.
scripts/Makefile.build:299: recipe for target '/tmp/test/simp.o' failed
make[2]: *** [/tmp/test/simp.o] Error 1
Makefile:1493: recipe for target '_module_/tmp/test' failed
make[1]: *** [_module_/tmp/test] Error 2
make[1]: Leaving directory '/home/lukasz/brl/Machine/beaglebone/build/linux-headers-a75d8e93056181d512f6c818e8627bd4554aaf92'
Makefile:8: recipe for target 'default' failed
make: *** [default] Error 2</pre>

</div><div>
Which I dont understand, since included the .h file specifically. I 
would appreciate all help regarding this. I was trying to find anyone 
else doing something similar (trying to cross compile a kernel module on
 the host using buildroot build tools), but was unable to. Most of the 
cases are already to advanced or dont apply to my problem.

</div><div><br></div><div><br></div><div><br></div><div><br></div></div>