First off, Thanks for going though and writing this all up. We have slated this update for after the current release of the book.

Again, thanks for this, and I know that if I get time to play with this, I will use your notes here to help me.

Dave

Gabriel Barazer wrote:
Hi,

I spent the last 4 days looking at all the options used for building GCC 4.3.0. I also compared to the old build options (in LFS/CLFS books, in gentoo,debian and fedora systems) as well as the ones in the only Linux distribution providing gcc 4.3 natively as far as I know (Fedora 9 preview, stable out in ~10 days). Many build options are now deprecated, and a whole list of build options, as usual, does not exists: each subsystem of gcc contains its own configure script with new options that you have to define when running the main script. The best way to see all the possible options is to run all the configure scripts with the --help switch e.g.
for i in $(find . -name 'configure'); do echo $i; $i --help; done
in the gcc 4.3.0 source directory

Here is a list of options which are still valid as of gcc-4.3.0:
../gcc-4.3.0/configure --prefix=/usr --libdir=/usr/lib64 --libexecdir=/usr/lib64 --mandir=/usr/share/man --infodir=/usr/share/info --enable-bootstrap --enable-shared --enable-threads=posix --enable-__cxa_atexit --enable-checking=release --with-system-zlib --enable-languages=c,c++

I compared to the configure options provided for gcc 4.2.2 in the CLFS manual (SVN 20080228 x86_64). These are not needed anymore:
--enable-c99: on by default
--enable-long-long: on by default
--enable-clocale=gnu: detection is automatic and correct
--disable-libstdcxx-pch: on by default, depends on --enable-hosted-libstdcxx which is also on by default

other options that _might_ be useful, although on by default:
--enable-multilib
--enable-bootstrap
--enable-shared
--with-system-zlib : obviously, this one has to be removed when building gcc on a new system without zlib (or maybe we could build zlib with the cross compiler before the final gcc build).

I also compared the fedora 9 build options for gcc-4.3: looks like they were in a hurry and forgot an old option: --disable-libunwind-exceptions: doesn't exist anymore since 2004, always disabled except if an external libunwind is specified with --with-system-libunwind all the other options such as --disable-dssi or --enable-plugin are for java

GCC 4.3.0 is still using an old autoconf version, so we have to fix the man/info pages paths with --mandir and --infodir

Last note: gcc's libiberty is not identical anymore to the one in binutils. The most recent one is in gcc, I guess we have to correct that as well in the manual.

Next move: testing. No serious errors have been detected according to the test summary:
-----
=== g++ tests ===


Running target unix
WARNING: Could not compile g++.dg/compat/struct-layout-1 generator

=== gcc tests ===


Running target unix
WARNING: Could not compile gcc.dg/compat/struct-layout-1 generator
XPASS: gcc.dg/cpp/cmdlne-dI-M.c scan-file (^|\\\\n)cmdlne-dI-M.*:[^\\\\n]*cmdlne-dI-M.c XPASS: gcc.dg/cpp/cmdlne-dM-M.c scan-file (^|\\\\n)cmdlne-dM-M[^\\\\n]*:[^\\\\n]*cmdlne-dM-M.c

=== libmudflap tests ===


Running target unix
FAIL: libmudflap.c++/pass41-frag.cxx execution test
FAIL: libmudflap.c++/pass41-frag.cxx ( -O) execution test
FAIL: libmudflap.c++/pass41-frag.cxx (-O2) execution test
FAIL: libmudflap.c++/pass41-frag.cxx (-O3) execution test

=== libstdc++ tests ===


Running target unix
XPASS: 26_numerics/headers/cmath/c99_classification_macros_c.cc (test for excess errors)

-----

The failed libmudflap tests are a known problem related to timeouts being too short.

Another note regarding the tests: some gcc tests are _very_ memory hungry (~1.5GB). I think it is important to warn users about this in the manual.

Can anyone update the book to include gcc 4.3.0 ?

Gabriel
_______________________________________________
Clfs-dev mailing list
[email protected]
http://lists.cross-lfs.org/listinfo.cgi/clfs-dev-cross-lfs.org

_______________________________________________
Clfs-dev mailing list
[email protected]
http://lists.cross-lfs.org/listinfo.cgi/clfs-dev-cross-lfs.org

Reply via email to