Hallo,
ich beiße mir gerade die Zähne daran aus für Ubuntu Hardy einen PowerPC Cross-Compiler zu bauen. Ich bin nach folgender Anleitung vorgegangen:
http://psas.pdx.edu/DebianCrossCompilerHowto/
Beim kompilieren des GCC (4.2) schlägt das ganze aber fehl:
$ export GCC_TARGET=powerpc $ debian/rules control $ CFLAGS="-g -02 -m32" dpkg-buildpackage -us -uc -rfakeroot -b
[...]
PATH=/usr/share/dpkg-cross:$PATH dh_strip -plibgcc1-powerpc-cross dh_compress -plibgcc1-powerpc-cross dh_fixperms -plibgcc1-powerpc-cross dh_makeshlibs -plibgcc1-powerpc-cross -V 'libgcc1-powerpc-cross (>= 1:4.2.1)' -n sed s/-powerpc-cross//g < debian/libgcc1-powerpc-cross/DEBIAN/shlibs > debian/libgcc1-powerpc-cross/DEBIAN/shlibs.fixed mv debian/libgcc1-powerpc-cross/DEBIAN/shlibs.fixed debian/libgcc1-powerpc-cross/DEBIAN/shlibs cat debian/libgcc1-powerpc-cross/DEBIAN/shlibs >> debian/shlibs.local ARCH=powerpc MAKEFLAGS="CC=something" dh_shlibdeps -plibgcc1-powerpc-cross dpkg-shlibdeps: failure: couldn't find library libc.so.6 needed by debian/libgcc1-powerpc-cross/usr/powerpc-linux-gnu/lib/libgcc_s.so.1 (its RPATH is ''). Note: libraries are not searched in other binary packages that do not have any shlibs or symbols file. To help dpkg-shlibdeps find private libraries, you might need to set LD_LIBRARY_PATH. dh_shlibdeps: command returned error code 512 make[1]: *** [stamps/08-binary-stamp-libgcc] Error 1 make[1]: Leaving directory `/home/marz/crosscomp/gcc/mount/gcc-4.2-4.2.3' make: *** [binary] Fehler 2 dpkg-buildpackage: Fehlschlag: fakeroot debian/rules binary gab Fehler-Exitstatus 2
Wenn ich explizit den LD_LIBRARY_PATH vorgebe schlägt das ganze aber auch fehl:
$ LD_LIBRARY_PATH+="/usr/powerpc-linux-gnu/lib/" ARCH=powerpc MAKEFLAGS="CC=something" dh_shlibdeps -plibgcc1-powerpc-cross /usr/bin/perl: error while loading shared libraries: /usr/powerpc-linux-gnu/lib/libdl.so.2: ELF file data encoding not little-endian
Wäre prima, wenn jemand eine Idee hat wie ich trotzdem den Cross-Compiler hin bekomme.
Danke, Martin