On Fri, 4 May 2007 19:56:15 +0100 Neil Williams <linux@codehelp.co.uk> wrote: > > The following packages have unmet dependencies. > > gcc-4.1-arm-linux-gnu: Depends: libssp0 but it is not going to be installed > > libc6-dev-arm-cross: Depends: libc6-arm-cross (= 2.3.6.ds1-8) but > > 2.5-4em1 is to be installed > > E: Broken packages > > Ah, now I do know what's happened there. The fact that apt is describing 2.5-4em1 here worries me - please check your sources lists, you SHOULD include emdebian.org/debian you should NOT include emdebian.org/emdebian. 2.5-4 is fine, 2.5-4em1 is not. Packages using the em1 version suffix are TARGET packages, intended for the embedded device NOT the build system. Compare: http://www.emdebian.org/packages/search.php?package=libc6&arch=arm&distro=unstable http://www.emdebian.org/toolchains/search.php?package=libc6-arm-cross&arch=all&distro=unstable You should have a source for: deb http://www.emdebian.org/debian/ unstable main deb-src http://www.emdebian.org/debian/ unstable main You should NOT have a source for: deb http://www.emdebian.org/emdebian/ unstable main deb-src http://www.emdebian.org/emdebian/ unstable main (substitute testing for unstable as appropriate). You should never see an 'emN' (where N is a sequential digit) in the apt output on the build system - only in the output of emdebian-tools or dpkg operations on the binary packages built by emdebian-tools (after the toolchain is installed). The problem is that if the emdebian TARGET repository is mentioned in ANY sources list for apt on the build system, apt will consider 2.5-4em1 to be MORE RECENT than 2.5-4 and will use that package in preference when looking for an arm binary to pass to apt-cross and then to dpkg-cross. Now that may be useful in certain circumstances but it should not be the default action - the dependencies of the emN package can be radically different to the Debian package. Indeed, emdebian seeks to ensure that some dependencies are different between Debian and Emdebian packages of the same software in order to make a smaller overall system. apt-cross and dpkg-cross need to present the same dependencies to the build system as the native package - emdebian-tools will handle the dependencies of the built package. Getting the wrong repository could mean that the package created by dpkg-cross would not be installable on any Debian system. Whilst emdebian does seek to support mixing packages and having compatibility between Emdebian and Debian, it is not easy and should probably not be the default action. Ah well, it all makes for more documentation for emdebian-tools . . . -- Neil Williams ============= http://www.data-freedom.org/ http://www.nosoftwarepatents.com/ http://www.linux.codehelp.co.uk/
Attachment:
pgp84OKW60qpS.pgp
Description: PGP signature