Cross compiling packages that try to run test programs
In a bid to try to cross compile enough packages to run debootstrap
(using only packages I have cross-compiled), I have run across a number
of packages that seem to be trying to outsmart my cross-compiling
efforts. I'm using dpkg-buildpackage (from dpkg-cross) with the
-apowerpc switch. My toolchain is a working GCC 3.4 varient and can
compile many packages, but has problems with packages that try to invoke
a test program as part of the configure script to test the output of the
compiler. For example chrpath and cpio both exhibit this problem. I
tried installing qemu-0.8.2-1 with the binfmt patch (as described
http://wiki.debian.org/QemuUserEmulation) so that powerpc executables
can be executed transparently, but qemu is just throwing an exeception
in this case. I have tested the qemu emulation using a simple hello
world program compiled with the same toolchain and that works fine.
In general how does emdebian plan to get around invocation of native
binaries as part of the compilation process? Is QEMU the right
approach? Will there be emdebian build patches for packages such as
this that will newter the testing configure does?
Thanks,
-Jim Heck
PS Here is the output of the configure.log file where it fails
configure:2244: checking for C compiler default output file name
configure:2247: powerpc-linux-gnu-gcc -Wall -g -O2 conftest.c >&5
configure:2250: $? = 0
configure:2296: result: a.out
configure:2301: checking whether the C compiler works
configure:2307: ./a.out
Invalid data memory access: 0xd4e49008
Invalid segfault errno (00)
qemu: uncaught target signal 11 (Segmentation fault) - exiting
configure:2310: $? = 245
configure:2319: error: cannot run C compiled programs.
If you meant to cross compile, use `--host'.
See `config.log' for more details.
Reply to: