Package: xapt Version: 2.2.17 Severity: normal Hi,
I'm trying to build a debian package of a mipsel cross-compiler. To do that, I build a binutils for my target, then I install required cross library with xapt and finally I try to build the cross-compiler itself. The last part fails within sid and testing. It took me some times, but I found the problem. xapt correctly fix paths in lib/libc.so but not in lib{32,64}/libc.so (ie these files refers to /lib{32,64}/* and /usr/lib{32,64}/* files instead of /usr/mipsel-linux-gnu/lib{32,64}) Manually changing these paths allow me to go further in the compilation of the cross compiler (but not yet to the end :-( ) You will find in attachment the script I use to build my cross-compiler. Regards, Vincent -- System Information: Debian Release: wheezy/sid APT prefers unstable APT policy: (500, 'unstable'), (500, 'testing'), (500, 'stable'), (1, 'experimental') Architecture: amd64 (x86_64) Kernel: Linux 3.0.0-2-amd64 (SMP w/8 CPU cores) Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Versions of packages xapt depends on: ii apt 0.8.15.9 ii dpkg-cross 2.6.5 ii dpkg-dev 1.16.2~50.gbp921bea ii libconfig-inifiles-perl 2.68-1 ii libdpkg-perl 1.16.2~50.gbp921bea ii liblocale-gettext-perl 1.05-7 ii perl 5.12.4-6 xapt recommends no packages. xapt suggests no packages. -- no debconf information
# Here is a script to build and install a cross compiler to be used on Nachos # # Contrary to previous document, this script build a recent cross compiler # (gcc 4.6 by default) so gcc 2.95 is not used anymore. # improvement: software is installed as real packages on the system # inconvenient: only works for Debian (unstable and perhaps # testing/wheezy) and it could perhaps work with ubuntu (feedback welcome) # # Note: recent gcc requires the target libc to build the cross-compiler. # This is why I cannot tell how to build one only from gcc sources # (as it was done with gcc 2.95) # # I think I put all required commands. Howver, it is probably better # to copy and paste the command to be able to look at the results # # WARNING: building the cross compiler itself requires lots of time and # lots of available disk space. It is probably possible to reduce this # if we build only the C cross compiler (and not C++, ...) but I did not # look if this can be easily done. # Do not copy-paste the next line in a interractive shell # (else your shell will exit as soon as a command does not succeed) set -ex mkdir -p tools cd tools TARGET=mipsel-linux-gnu if test "$(ls binutils-$TARGET_*.deb 2>/dev/null)" ; then echo "Skipping building and installing binutils (already there)" else apt-get source binutils sudo apt-get build-dep binutils sudo apt-get install fakeroot build-essential binutils-multiarch cd binutils-* env TARGET=$TARGET dpkg-buildpackage -b -uc -us cd .. sudo dpkg -i binutils-$TARGET_*.deb fi sudo apt-get install dpkg-cross xapt sudo xapt --mirror http://ftp.fr.debian.org/debian/ \ --arch mipsel --suite unstable --keep-cache libc6-dev libc6 \ libc6-dev-mips64 libc6-dev-mipsn32 libc6-mips64 linux-libc-dev libc6-mipsn32 # At least 4.5. Previous does not have a correct cross-compiler build setup GCC_V=4.6 apt-get source gcc-${GCC_V} sudo apt-get build-dep gcc-${GCC_V} sudo apt-get install gcc-${GCC_V}-source cd gcc-${GCC_V}-* env GCC_TARGET=mipsel debian/rules control env GCC_TARGET=mipsel dpkg-buildpackage -rfakeroot -us -uc -b cd .. sudo dpkg -i gcc-${GCC_V}-mipsel-linux-gnu_*.deb gcc-${GCC_V}-mipsel-linux-gnu-base_*.deb cpp-${GCC_V}-mipsel-linux-gnu_*.deb libgcc1-mipsel-cross_*.deb libgomp1-mipsel-cross_*.deb # Once the packages are installed, all the tools directory can be removed. # This version of nachos will automatically detect and use this cross-compiler # Enjoy.