tiomap-dev team mailing list archive
-
tiomap-dev team
-
Mailing list archive
-
Message #00286
[Bug 666267] Re: Cross compiled headers package breaks DKMS compilation
I've added DKMS to this bug.
So from my point of view, it contains 2 parts of issue.
1. DKMS should not use those script to build kernel drivers when installing
2. kernel header package should not package those host native binaries.
Mario, could you please help me take a look at this?
Thanks,
-Bryan
** Also affects: dkms
Importance: Undecided
Status: New
--
Cross compiled headers package breaks DKMS compilation
https://bugs.launchpad.net/bugs/666267
You received this bug notification because you are a member of TI OMAP
Developers, which is a direct subscriber.
Status in Dynamic Kernel Module Support: New
Status in “linux-ti-omap4” package in Ubuntu: New
Bug description:
When cross-compiling headers package on a PC, some x86 programs get shipped in the .deb.
Those programs get called during later compilation of DKMS modules, breaking the build.
Faulty binaries are:
scripts/mod/mk_elfconfig
scripts/mod/modpost
scripts/kconfig/conf
scripts/basic/hash
scripts/basic/docproc
scripts/basic/fixdep
scripts/bin2c
scripts/kallsyms
scripts/pnmtologo
scripts/conmakehash
scripts/selinux/genheaders/genheaders
scripts/selinux/mdp/mdp
Starting with, for example:
https://launchpad.net/ubuntu/+archive/primary/+files/linux-ti-omap4_2.6.35.orig.tar.gz
https://launchpad.net/ubuntu/+archive/primary/+files/linux-ti-omap4_2.6.35-903.16.diff.gz
https://launchpad.net/ubuntu/+archive/primary/+files/linux-ti-omap4_2.6.35-903.16.dsc
Extract with 'dpkg-source -x linux-ti-omap4_2.6.35-903.16.dsc'.
Cross compilation is done with:
fakeroot debian/rules clean
export $(dpkg-architecture -aarmel)
CROSS_COMPILE=arm-linux-gnueabi- skipabi=true skipmodule=true fakeroot debian/rules binary-omap4
To obtain cross compilers, add the following line to your '/etc/apt/sources.list':
deb http://people.canonical.com/~hrw/ubuntu-maverick-armel-cross-compilers/ ./
Then install 'gcc-4.4-arm-linux-gnueabi'.
After cross build, the resulting .deb are:
linux-headers-2.6.35-903-omap4_2.6.35-903.16_armel.deb
linux-image-2.6.35-903-omap4_2.6.35-903.16_armel.deb
One can check the shipped x86 binaries by extracting the .deb:
dpkg -x linux-headers-2.6.35-903-omap4_2.6.35-903.16_armel.deb extract
...and searching for x86 executables:
find extract/usr/src/linux-headers-2.6.35-903-omap4/scripts -type f -exec file "{}" \; |grep ELF |grep x86 |sed 's,:.*,,'
Some more details on cross compiling can be found at 'http://idlethread.blogspot.com/2009/01/recipe-of-day-cross-compiling-armel.html'.