On Thursday 27 March 2008, Neil Williams wrote: > On Thu, 2008-03-27 at 19:28 +0000, David Goodenough wrote: > > On Thursday 27 March 2008, Neil Williams wrote: > > > On Thu, 2008-03-27 at 17:01 +0000, David Goodenough wrote: > > > > When doing a cross arch build it fails > > > > saying that there is an uninitialised value in join (the place where > > > > is uses @line is join( " ", @line)). > > This isn't a failure, it's just a warning message - the script > continues without problems. > > > > > Now in this case there ARE (two) unmet things to be installed, > > > > so it should have something to do here. > > apt-cross has identified that these two packages are already installed. They may already have been downloaded, but they do not get installed into the chroot. > > > Cleaned and emdebianised source tree for 'dpkg' exists at > > '/home/david/emdebian/trunk/d/dpkg/trunk/dpkg-1.14.16.6' > > Installing build dependencies with apt-get > > Enter your sudo password if prompted. > > Reading package lists... Done > > Building dependency tree > > Reading state information... Done > > 0 upgraded, 0 newly installed, 0 to remove and 71 not upgraded. > > Installing cross dependencies with emdebuild --build-dep > > Use of uninitialized value in join or string at /usr/bin/emdebuild line > > 674. > > I'm not sure why that message appears but it is not important, nor is it > a "failure". It's just a message. I will see what can be done but it is > not a problem. > > > Installing: zlib1g-dev libbz2-dev libselinux1-dev with apt-cross. > > You should find that zlib1g-dev-mipsel-cross, libbz2-dev-mipsel-cross > and libselinux1-dev-mipsel-cross are already installed and up to date. > > > Checking dependencies: / > > 0 to be upgraded, 0 to be newly installed. > > That is what this line means - apt-cross has checked your installation > and found that dpkg on your build machine claims these packages as > already installed as cross packages (and are also almost certainly > installed as native packages simply because so many other packages use > them). As it happens zlibg1-dev has not been installed. dpkg reports:-
[EMAIL PROTECTED]:~/emdebian/trunk$ dpkg -l "zlib1-dev*" Desired=Unknown/Install/Remove/Purge/Hold | Status=Not/Installed/Config-files/Unpacked/Failed-config/Half-installed |/ Err?=(none)/Hold/Reinst-required/X=both-problems (Status,Err: uppercase=bad) ||/ Name Version Description +++-=============================-=============================-========================================================================== un zlib1-dev <none> (no description available) un zlib1-dev-i386-cross <none> (no description available) So I am not quite sure why apt-cross thinks it has been. apt-cross says:- [EMAIL PROTECTED]:~/emdebian/trunk$ apt-cross -a mipsel -l zlib1g-dev-mipsel-cross gcc-2.95-mipsel-cross gettext-mipsel-cross glibc-2.7-1-mipsel-cross libc-dev-mipsel-cross libc6-dev-mipsel-cross libc6-mipsel-cross libgcc1-mipsel-cross libgdbmg1-dev-mipsel-cross libstdc++-dev-mipsel-cross libstdc++2.10-dev-mipsel-cross libstdc++6-4.3-dev-mipsel-cross libstdc++6-4.3-pic-mipsel-cross libstdc++6-mipsel-cross libterm-readline-gnu-perl-mipsel-cross linux-kernel-headers-mipsel-cross linux-libc-dev-mipsel-cross man-db-mipsel-cross ppp-mipsel-cross [EMAIL PROTECTED]:~/emdebian/trunk$ apt-cross -a mipsel -s zlib1g-dev-mipsel-cross apt-cross: Unable to find zlib1g-dev-mipsel-cross. > > > Attempting an automatic build > > Building 'dpkg' for mipsel on i386. > > And so the build proceeds - any failures beyond this point are down to > the build itself, not the dependencies. > > (Note that this stage happens at the very start of the build - > dpkg-buildpackage hasn't even been called yet. emdebuild is about to set > up the workarounds for the known dpkg cross building bugs and then call > dpkg-buildpackage -a mipsel in that modified environment.) Well the failures I get are to do with the failure to install zlib1g-dev. libz.so is not found, and the relevant headers are not found. So it looks as though although apt-cross may think it is installed, it has not been. But there are no other errors or warnings between these and the failure. At the point of failure I get:- checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking for gzdopen in -lz... no configure: error: zlib library not found See `config.log' for more details. make: *** [build-tree/config.status] Error 1 dpkg-buildpackage: failure: debian/rules build gave error exit status 2 And zlib should have been installed which is part of zlib1g-dev.. This worked just fine with the i386 build, this is the first time I have tried a cross architecture build. David

