On Sat, 21 Jan 2012 20:37:58 +0800 Paul Wise <pabs@debian.org> wrote: > On Thu, Jan 19, 2012 at 8:10 PM, Wookey wrote: > > > Currently on Debian you'll need to have made the emdebian repositories > > available because otherwise you won't find any cross-compilers, but > > hopefully we'll have them in the main archive in the not-too distant. > > Whats the status/blockers for getting these into Debian main? Hector has more details but it's about just how to create the cross-compilers themselves. It's the same source, built in a different way - so the cross compiler package would need to build depend on the relevant source package. There's also the problem of exactly how to install the foreign architecture libgcc1 cross binary and other packages needed for the compiler (during the build and runtime). $ dpkg -s g++-4.4-arm-linux-gnueabi|grep Depends Depends: gcc-4.4-arm-linux-gnueabi-base (= 4.4.5-8), gcc-4.4-arm-linux-gnueabi (= 4.4.5-8), libstdc++6-4.4-dev-armel-cross (= 4.4.5-8), libc6 (>= 2.11), libgmp3c2, libmpfr4 $ dpkg -s gcc-4.4-arm-linux-gnueabi|grep Depends Depends: gcc-4.4-arm-linux-gnueabi-base (= 4.4.5-8), cpp-4.4-arm-linux-gnueabi (= 4.4.5-8), binutils-arm-linux-gnueabi (>= 2.20.1-15~), libgcc1-armel-cross (>= 1:4.4.5-8), libgomp1-armel-cross (>= 4.4.5-8), libc6 (>= 2.11) $ dpkg -s cpp-4.4-arm-linux-gnueabi|grep Depends Depends: gcc-4.4-arm-linux-gnueabi-base (= 4.4.5-8), libc6 (>= 2.11), libgmp3c2, libmpfr4 $ dpkg -s binutils-arm-linux-gnueabi|grep Depends Depends: binutils, libc6 (>= 2.11), zlib1g (>= 1:1.1.4) The cross-dependency resolution is yet another feature of Debian which is waiting for MultiArch... The cross compilers we want in Debian won't do things like depend on libgcc1-armel-cross but instead on libgcc1 [armel]. This is one of the situations to which Raphael referred in another thread as "unneeded" - i386/amd64 packages depending directly on armel packages. i.e. cross-architecture multiarch dependencies. It is going to have to be solved to get cross-compilers into Debian. It's probably going to have to be solved to make Multiarch work with cross-building in the first place. One final question is the combination of cross-compilers to support - in particular IIRC there are particular problems with biarch architectures like sparc. There are a lot of problems trying to support too many cross-compiler target architectures. May be best to start with armel+armhf and wait until someone else steps up to help with mips|mipsel. > I would dearly like to be able to compile ARM stuff elsewhere than on > my phone since it is a bit slow ;) 0: get a faster phone :-) 1: use the Emdebian toolchains for Squeeze in a chroot. 2: get a second armel board with a faster processor... -- Neil Williams ============= http://www.linux.codehelp.co.uk/
Attachment:
pgptCmJ4_YqD0.pgp
Description: PGP signature