Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

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 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.

share|improve this question

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Browse other questions tagged or ask your own question.