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. I must compile a driver for an 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.

However, I did succeed in building the same driver for an older kernel for the same machine, namely 2.6.32.15. 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?

$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

$ 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

 
discard

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

Browse other questions tagged or ask your own question.