I am currently using Ubuntu 12.04 LTS with kernel 3.2 on my x86_64 laptop but I must compile a driver for a i686 machine running Ubuntu 12.04.3 LTS with kernel 3.8.0-29-generic.
The driver compiles successfully, but on the target machine I get the usual "disagrees about version for module_layout" error message. I tried several options already to alter the kernel configuration, but so far without any luck.
However, I did succeed in building the same driver for an older kernel for the same machine, namely 22.214.171.124. Since then I archived the .config and Module.symvers and copied them to the kernel source directory when having to rebuild the driver.
Is there a place where these two files can be downloaded from? I mean the exact files which where generated for kernel as it is used in the LTS versions?
Or am I too blind to see the obvious how to build a driver on one machine for another completely different machine?
Some additional information. I get this information from "uname -a": Linux terahertz 3.8.0-29-generic #42~precise1-Ubuntu SMP Wed Aug 14 15:31:16 UTC 2013 i686 i686 i386 GNU/Linux
And this is the output of "modinfo its_drv.ko": filename: its_drv.ko license: GPL vermagic: 3.8.0 SMP 686 depends:
With this driver insmod still complains about an invalid module format, but there is no further error message in dmesg.