= Build-Cross-Depends packages = This page seeks to build a list of packages that have to be available on the build host as native packages and as cross packages, installed using dpkg-cross or apt-cross. == auto-apt == auto-apt was considered as a tool to identify these cross dependencies but the first results were not exciting: 1. empdebuild needs a source of dependencies processed by dpkg-cross. 1. auto-apt can obtain packages when requested from a repository 1. apt-cross needs to be more intelligent and check if a cross-package is available rather than always building it afresh. 1. debian/xcontrol can specify the packages required for empdebuild. 1. debian/xcontrol is in SVN (as a patch) 1. the toolchain repository already contains some cross packages. 1. use auto-apt -L to write a log file: parse to create xcontrol. 1. auto-apt does not create it's database on installation, need to copy it or update it. Yuk. 1. auto-apt slows down the build enormously - too slow to use routinely. Also consumes all memory. Therefore: only recommend when first emdebianising. 1. logfile option (-L) does not work. (DebianBug:426854). 1. auto-apt automation would try to install fortran compilers etc. 1. auto-apt fails to locate the emdebian toolchain sources. (DebianBug:426851). 1. auto-apt fails to detect the need for cross-built libraries: {{{ # auto-apt -L -y run emdebuild -a arm ... dpkg: /usr/arm-linux-gnu/lib/libpam.so.0 not found. dpkg: /usr/arm-linux-gnu/lib/libselinux.so.1 not found. dpkg: /usr/arm-linux-gnu/lib/libc.so.6 not found. dpkg-shlibdeps: failure: dpkg --search gave error exit status 1 dh_shlibdeps: command returned error code 256 make: *** [binary-arch] Error 1 make: Leaving directory `/opt/trunk/c/cron/trunk/cron-3.0pl1' sh-3.1# ls }}} Currently, the rest of this page is just a list of what I had to install for certain packages. See also: EmdebianGuide and [[Embedded_Debian|Emdebian]] == gcc-4.1 == {{{ $ apt-cross --install libmpfr-dev }}} ... {{{ Setting up libgmp3c2-arm-cross (4.2.1+dfsg-4) ... Setting up libgcc1-arm-cross (4.1.1-21) ... Setting up libmpfr1-arm-cross (2.2.1.dfsg.1-2) ... Setting up libstdc++6-arm-cross (4.1.1-21) ... Setting up libgmpxx4-arm-cross (4.2.1+dfsg-4) ... Setting up libgmp3-dev-arm-cross (4.2.1+dfsg-4) ... Setting up libmpfr-dev-arm-cross (2.2.1.dfsg.1-2) ... }}} == cdebconf == libdebian-installer4-dev == cron == libselinux-dev == sysvinit == libselinux-dev == pam == cracklib2-dev == dialog == libncursesw5-dev == logrotate == {{{ libselinux-dev libpopt-dev }}} == wget == {{{ libssl0.9.8 libssl-dev }}} == openldap2 == {{{ libltdl3-dev libdb4.2-dev libwrap0-dev libiodbc2-dev libsasl2-dev libslp-dev }}} == aptitude == {{{ libncursesw5-dev libapt-pkg-dev (needs dpkg-cross >= 1.38 and apt-cross >= 0.1.2) libsigc++-2.0-dev libcppunit-dev (not picked up by configure, causes a failure much later if missing.) }}} == libx11 == {{{ xtrans-dev libxau-dev x11proto-xcmisc-dev x11proto-bigreqs-dev x11proto-xext-dev libxdmcp-dev x11proto-kb-dev x11proto-input-dev }}} My current list of cross-built dev packages: {{{ $ apt-cross --list | grep dev amd64-libs-dev-arm-cross attr-dev-arm-cross dvb-dev-arm-cross kerberos4kth-dev-arm-cross libattr1-dev-arm-cross libbz2-dev-arm-cross libc-dev-arm-cross libc6-dev-arm-cross libc6.1-dev-arm-cross libdebian-installer-dev-arm-cross libdebian-installer4-dev-arm-cross libgdbmg1-dev-arm-cross libglib1.3-dev-arm-cross libglib2.0-dev-arm-cross libgmp2-dev-arm-cross libgmp3-dev-arm-cross libgpmg1-dev-arm-cross libmpfr-dev-arm-cross libncurses-dev-arm-cross libncurses5-dev-arm-cross libpam-dev-arm-cross libpam0g-dev-arm-cross libreadline-dev-arm-cross libreadline5-dev-arm-cross libselinux-dev-arm-cross libselinux1-dev-arm-cross libsepol-dev-arm-cross libsepol1-dev-arm-cross libslang2-dev-arm-cross libsqlite-dev-arm-cross libsqlite0-dev-arm-cross libstdc++-dev-arm-cross libstdc++2.10-dev-arm-cross libstdc++6-4.1-dev-arm-cross libxml2-dev-arm-cross libz-dev-arm-cross ncurses-dev-arm-cross ncurses-developer-arm-cross slang-dev6-arm-cross slang0.99.34-dev-arm-cross slang1-utf8-dev-arm-cross zlib1-dev-arm-cross zlib1g-dev-arm-cross }}} ---- CategoryEmdebian