[gccsdk] Building wget on a 'fresh' autobuilder

Frank de Bruijn gcc-sub at aconet.nl
Thu Apr 1 13:23:47 PDT 2010


Hi,

Yesterday I installed the gccsdk cross-compiler and the autobuilder on
my Ubuntu 9.10 box. Revision 4540, according to the svn checkout.
Building this was only delayed by installing the help2man tool, which
wasn't mentioned in the 'full list' on the Using_GCCSDK page (I had
installed all the other tools beforehand).

Then I thought I might as well try the 'Simple Autobuilder example' and
build wget. The autobuilder then complained about three extra tools that
needed to be installed, also not mentioned on the page (intltool,
automake-1,7 and polkit). But that was only the start of it...

Apparently, the dependencies have had numerous upstream changes. The
first thing that needed extra attention was libssl0.9.8, because of
three patches that didn't work. After I had handled that, the next
dependency that failed was dpkg. Every time I fix something there, I get
a little further in the process, but I'm still nowhere near compiling
wget itself.

I'd like to make sure I haven't been wasting my time so far because I
took a wrong turn somewhere. So could someone with more experience with
these tools please confirm that trying to build wget on a completely
'fresh' autobuilder actually does fail all over the place? Thanks.

Below are some notes about the things I changed so far. With these fixes
I get as far as the compiler test in dpkg's configure script (no further
than line 3002).

Regards,
Frank


/home/riscos/gccsdk/autobuilder/libraries/libssl0.9.8/Configure.p:
The first line to be patched doesn't contain #!/usr/local/bin/perl but
just a single colon.

/home/riscos/gccsdk/autobuilder/libraries/libssl0.9.8/makefile.org.p:
The first line to be replaced is MANDIR=$(OPENSSLDIR)/man and not
MANDIR=/usr/share/man.
The four lines to be removed in the second patch have $(LIBDIR) where
the patch file specifies lib.

/home/riscos/gccsdk/autobuilder/fetch-program:
This wants to download dpkg_1.15.5.6.tar.bz2 (as specified in the file
/home/riscos/gccsdk/build/dpgk/files, extracted from
Sources-testing-main.bz2). Unfortunately, this is a bzipped tarball and
not a gzipped one, so the script fails because wget's -O argument is
missing (line 147).
So I changed the script so it tries to grep a .tar.bz2 filename from
files if $file is empty after grepping a .tar.gz. It also required a few
changes further down, specifically the tar command and setting
targetname.
The changed script (and the patch files) can temporarily be found here:
http://www.aconet.org/temp/autobuilder.zip if anyone is interested.
Beware! This is just a quick-and-dirty hack and can no doubt be done a
lot better.

/home/riscos/gccsdk/autobuilder/autobuilder/cli/dpkg/configure.c.p:
There needs to be a space before SIGTSTP for this patch to work.

/home/riscos/gccsdk/autobuilder/autobuilder/cli/dpkg/va_list.p:
The file dpkg-db.h has moved from lib to lib/dpkg (i.e. is now
lib/dpkg/dpkg-db.h).





More information about the gcc mailing list