← Back to team overview

tiomap-dev team mailing list archive

[Bug 666267] Re: Cross compiled headers package breaks DKMS compilation

 

Avik, you'll probably hit this bug if you try Systemtap (or any other
dkms package) with a kernel package that was built using the cross
toolchain. To properly fix it sync with Marcin and John, they should
know exactly what are the needed changes at the kernel package.

** Also affects: linaro-ubuntu
   Importance: Undecided
       Status: New

** Changed in: linaro-ubuntu
       Status: New => Triaged

** Changed in: linaro-ubuntu
   Importance: Undecided => Medium

** Changed in: linaro-ubuntu
     Assignee: (unassigned) => Avik Sil (aviksil)

** Changed in: linaro-ubuntu
    Milestone: None => 11.09

-- 
You received this bug notification because you are a member of TI OMAP
Developers, which is subscribed to the bug report.
https://bugs.launchpad.net/bugs/666267

Title:
  Cross compiled headers package breaks DKMS compilation

Status in Dynamic Kernel Module Support:
  Won't Fix
Status in Linaro Ubuntu Evaluation Builds:
  Triaged
Status in “linux-linaro-mx51” package in Ubuntu:
  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'.

To manage notifications about this bug go to:
https://bugs.launchpad.net/dkms/+bug/666267/+subscriptions