*************************************************************** *************************************************************** # # # build tool-chain mit GNU LibC 2.3.6 # # gcc, gc++, gcj, gcobjc -> 4.2.4 # # 2012-08-22, 2012-08-23, 2012-08-24 # svn://gcc.gnu.org/svn/gcc/branches/gcc-4_2-branch # ergibt dann einen 4.2.5 # 'gcc (GCC) 4.2.5 20090330 (prerelease)' # angefangen mit gcc-4.1.3 exit 1 # http://www.linuxfromscratch.org/lfs/view/6.6/index.html # http://www.linuxfromscratch.org/lfs/view/7.1/ # http://www.linuxfromscratch.org/patches/downloads/ 1. Durchlauf -------------- gmp-5.0.5 tar xf gmp-5.0.5.tar.xz && mkdir build-1 && cd build-1 2. Konsole export CFLAGS='-O2 -march=i486' export CXXFLAGS="${CFLAGS}" ../gmp-5.0.5/configure \ --prefix=/usr \ --enable-cxx \ --enable-mpbsd \ --build=i486-pc-linux-gnu \ --host=i486-pc-linux-gnu make make check make DESTDIR=/public/toolchain/gmp/build-1 install make install mpfr-3.1.1 tar xf mpfr-3.1.1.tar.xz && mkdir build-1 && cd build-1 2. Konsole export CFLAGS='-O2 -march=i486' export CXXFLAGS="${CFLAGS}" ../mpfr-3.1.1/configure \ --prefix=/usr \ --build=i486-pc-linux-gnu \ --host=i486-pc-linux-gnu # --enable-thread-safe \ make make check make DESTDIR=/public/toolchain/mpfr/build-1 install make install 1. Konsole binutils-2.22 patch -Np1 -i ../binutils-2.22-build_fix-1.patch tar xf binutils-2.22.tar.bz2 && mkdir build-1 && cd build-1 ../binutils-2.22/configure \ --prefix=/usr \ --disable-nls \ --disable-werror \ --build=i486-pc-linux-gnu \ --host=i486-pc-linux-gnu # --target=i486-pc-linux-gnu make make DESTDIR=/public/toolchain/binutils/build-1 install make install #gcc-4.4.3 gcc-4_2-branch 1. Konsole tar xf gcc-4.4.3.tar.bz2 && cd gcc-4.4.3 sed -i 's/install_to_$(INSTALL_DEST) //' libiberty/Makefile.in sed -i 's@\./fixinc\.sh@-c true@' gcc/Makefile.in cd .. && mkdir build-1 && cd build-1 ../gcc-4_2-branch/configure \ --prefix=/usr \ --libexecdir=/usr/lib \ --enable-shared \ --disable-nls \ --disable-multilib \ --disable-decimal-float \ --disable-threads \ --disable-libmudflap \ --disable-libssp \ --disable-libgomp \ --enable-languages=c \ --build=i486-pc-linux-gnu \ --host=i486-pc-linux-gnu \ --enable-bootstrap # --target=i486-pc-linux-gnu make make DESTDIR=/public/toolchain/gcc/build-1 install make install cp /usr/lib/libgcc_s.so.1 /lib ln -sfv lib/libgcc_s.so.1 /usr/lib/libgcc_s.so 2. Durchlauf -------------- 1. Konsole binutils-2.22 mkdir build-2 && cd build-2 ../binutils-2.22/configure \ --prefix=/usr \ --disable-nls \ --build=i486-pc-linux-gnu \ --host=i486-pc-linux-gnu make make DESTDIR=/public/toolchain/binutils/build-2 install make install cp -v ../binutils-2.22/include/libiberty.h /usr/include/ #gcc-4.4.3 gcc-4_2-branch 1. Konsole tar xf gcc-4.4.3.tar.bz2 && cd gcc-4.4.3 sed -i 's/install_to_$(INSTALL_DEST) //' libiberty/Makefile.in sed -i 's@\./fixinc\.sh@-c true@' gcc/Makefile.in # ich weiss nicht was fuer 4_2 richtig ist, # setzte mal beide Versionen sed -i 's/^T_CFLAGS =$/& -fomit-frame-pointer/' gcc/Makefile.in sed -i 's/^XCFLAGS =$/& -fomit-frame-pointer/' gcc/Makefile.in cd .. && mkdir build-2 && cd build-2 ../gcc-4_2-branch/configure \ --prefix=/usr \ --libexecdir=/usr/lib \ --enable-clocale=gnu \ --enable-shared \ --enable-threads=posix \ --enable-__cxa_atexit \ --enable-languages=c,c++ \ --disable-libstdcxx-pch \ --disable-multilib \ --build=i486-pc-linux-gnu \ --host=i486-pc-linux-gnu \ --disable-bootstrap make # 4.4.3 configure: WARNING: The kernel might not support futex or gettid syscalls. If so, please configure with --disable-linux-futex make DESTDIR=/public/toolchain/gcc/build-2 install make install Tcl-8.5.12 cd unix && ./configure \ --prefix=/usr \ --build=i486-pc-linux-gnu \ --host=i486-pc-linux-gnu make TZ=UTC make test make DESTDIR=/public/toolchain/tcl/build-2 install make install make DESTDIR=/public/toolchain/tcl/build-2 install-private-headers make install-private-headers ln -v -sf tclsh8.5 /usr/bin/tclsh Expect-5.45 ./configure \ --prefix=/usr \ --with-tcl=/usr/lib \ --with-tclinclude=/usr/include \ --with-x=no \ --build=i486-pc-linux-gnu \ --host=i486-pc-linux-gnu make make test make SCRIPTS="" DESTDIR=/public/toolchain/expect/build-2 install wenn gemeckert wird, die Argumente entfernen make SCRIPTS="" install DejaGNU-1.5 ./configure \ --prefix=/usr \ --build=i486-pc-linux-gnu \ --host=i486-pc-linux-gnu make macke check make DESTDIR=/public/toolchain/dejagnu/build-2 install make install m4-1.4.16 ./configure \ --prefix=/usr \ --build=i486-pc-linux-gnu \ --host=i486-pc-linux-gnu # 4.4.3 checking whether uses 'inline' correctly... no configure: error: cannot be used with this compiler (i486-pc-linux-gnu-gcc -std=gnu99 -g -O2 ). This is a known interoperability problem of glibc <= 2.5 with gcc >= 4.3 in C99 mode. You have four options: - Add the flag -fgnu89-inline to CC and reconfigure, or - Fix your include files, using parts of , or - Use a gcc version older than 4.3, or - Don't use the flags -std=c99 or -std=gnu99. Configuration aborted. make make check make DESTDIR=/public/toolchain/m4/build-2 install make install Make-3.82 ./configure \ --prefix=/usr \ --build=i486-pc-linux-gnu \ --host=i486-pc-linux-gnu make make check make DESTDIR=/public/toolchain/make/build-2 install make install Patch-2.6.1 ./configure \ --prefix=/usr \ --build=i486-pc-linux-gnu \ --host=i486-pc-linux-gnu make make check make DESTDIR=/public/toolchain/patch/build-2 install make install Texinfo-4.13a ./configure \ --prefix=/usr \ --build=i486-pc-linux-gnu \ --host=i486-pc-linux-gnu make make check make DESTDIR=/public/toolchain/texinfo/build-2 install make install 3. Durchlauf -------------- 1. Konsole binutils-2.22 mkdir build-3 && cd build-3 ../binutils-2.22/configure \ --prefix=/usr \ --enable-shared \ --build=i486-pc-linux-gnu \ --host=i486-pc-linux-gnu make make -k check === binutils Summary === # of expected passes 89 # of unsupported tests 3 === gas Summary === # of expected passes 346 === ld Summary === # of expected passes 675 # of expected failures 8 # of untested testcases 1 ./test-expandargv PASS: test-expandargv-0. PASS: test-expandargv-1. PASS: test-expandargv-2. PASS: test-expandargv-3. PASS: test-expandargv-4. PASS: test-expandargv-5. PASS: test-expandargv-6. make DESTDIR=/public/toolchain/binutils/build-3 install make install cp -v ../binutils-2.22/include/libiberty.h /public/toolchain/binutils/build-3/usr/include/ cp -v ../binutils-2.22/include/libiberty.h /usr/include/ gmp-5.0.5 tar xf gmp-5.0.5.tar.xz && mkdir build-3 && cd build-3 2. Konsole export CFLAGS='-O2 -march=i486' export CXXFLAGS="${CFLAGS}" ../gmp-5.0.5/configure \ --prefix=/usr \ --enable-cxx \ --enable-mpbsd \ --build=i486-pc-linux-gnu \ --host=i486-pc-linux-gnu make make check 2>&1 | tee gmp-check-log # bei 5.0.4 = 164 awk '/tests passed/{total+=$2} ; END{print total}' gmp-check-log # 166 make DESTDIR=/public/toolchain/gmp/build-3 install make install mpfr-3.1.1 tar xf mpfr-3.1.1.tar.xz && mkdir build-3 && cd build-3 2. Konsole export CFLAGS='-O2 -march=i486' export CXXFLAGS="${CFLAGS}" ../mpfr-3.1.1/configure \ --prefix=/usr \ --disable-thread-safe \ --build=i486-pc-linux-gnu \ --host=i486-pc-linux-gnu make make check # All 160 tests passed # (1 test was not run make DESTDIR=/public/toolchain/mpfr/build-3 install make install #gcc-4.4.3 gcc-4_2-branch 1. Konsole #tar xf gcc-4.4.3.tar.bz2 && #cd gcc-4.4.3 cd gcc-4_2-branch sed -i 's/install_to_$(INSTALL_DEST) //' libiberty/Makefile.in sed -i 's@\./fixinc\.sh@-c true@' gcc/Makefile.in # ich weiss nicht was fuer 4_2 richtig ist, # setzte mal beide Versionen sed -i 's/^T_CFLAGS =$/& -fomit-frame-pointer/' gcc/Makefile.in sed -i 's/^XCFLAGS =$/& -fomit-frame-pointer/' gcc/Makefile.in cd .. && mkdir build-3 && cd build-3 ../gcc-4_2-branch/configure \ --prefix=/usr \ --libexecdir=/usr/lib \ --enable-clocale=gnu \ --enable-shared \ --enable-threads=posix \ --enable-__cxa_atexit \ --enable-languages=c,c++ \ --disable-libstdcxx-pch \ --disable-multilib \ --build=i486-pc-linux-gnu \ --host=i486-pc-linux-gnu \ --enable-libssp \ --disable-bootstrap \ --disable-tls make # 4.4.3 configure: WARNING: The kernel might not support futex or gettid syscalls. If so, please configure with --disable-linux-futex make -k check 2>&1 | tee gcc-check # dauert ca. 2 Std Test Run By holbru on Thu Aug 23 21:51:11 2012 Native configuration is i486-pc-linux-gnu === gcc Summary === # of expected passes 42524 # of unexpected successes 1 # of expected failures 114 # of unresolved testcases 1 # of untested testcases 28 # of unsupported tests 334 === g++ Summary === # of expected passes 13586 # of expected failures 67 # of unsupported tests 88 === libstdc++ Summary === # of expected passes 3853 # of expected failures 15 # of unsupported tests 316 === libmudflap Summary === # of expected passes 1814 === libgomp Summary === # of expected passes 388 # of unsupported tests 55 make DESTDIR=/public/toolchain/gcc/build-3 install make install cp /usr/lib/libgcc_s.so.1 /lib ln -sf /lib/libgcc_s.so.1 /usr/lib/libgcc_s.so ln -sv ../usr/bin/cpp /lib ln -sv gcc /usr/bin/cc echo 'main(){}' > dummy.c cc dummy.c -v -Wl,--verbose &> dummy.log readelf -l a.out | grep ': /lib' # [Requesting program interpreter: /lib/ld-linux.so.2] grep -o '/usr/lib.*/crt[1in].*succeeded' dummy.log # /usr/lib/gcc/i486-pc-linux-gnu/4.2.5/../../../crt1.o succeeded # /usr/lib/gcc/i486-pc-linux-gnu/4.2.5/../../../crti.o succeeded # /usr/lib/gcc/i486-pc-linux-gnu/4.2.5/../../../crtn.o succeeded grep -B4 '^ /usr/include' dummy.log # ignoring nonexistent directory "/usr/lib/gcc/i486-pc-linux-gnu/4.2.5/../../../../i486-pc-linux-gnu/include" #include "..." search starts here: #include <...> search starts here: # /usr/lib/gcc/i486-pc-linux-gnu/4.2.5/include # /usr/include grep 'SEARCH.*/usr/lib' dummy.log |sed 's|; |\n|g' # SEARCH_DIR("/usr/i486-pc-linux-gnu/lib") # SEARCH_DIR("/usr/local/lib") # SEARCH_DIR("/lib") # SEARCH_DIR("/usr/lib"); grep "/lib.*/libc.so.6 " dummy.log # attempt to open /lib/libc.so.6 succeeded grep found dummy.log # found ld-linux.so.2 at /lib/ld-linux.so.2 rm -v dummy.c a.out dummy.log # removed `dummy.c' # removed `a.out' # removed `dummy.log' m4-1.4.16 ./configure \ --prefix=/usr \ --build=i486-pc-linux-gnu \ --host=i486-pc-linux-gnu make make check # All 115 tests passed # (15 tests were not run) make DESTDIR=/public/toolchain/m4/build-3 install make install bison-2.6.2 ./configure \ --prefix=/usr \ --build=i486-pc-linux-gnu \ --host=i486-pc-linux-gnu echo '#define YYENABLE_NLS 1' >> lib/config.h make make check # 307 tests were successful. # 18 tests were skipped. make DESTDIR=/public/toolchain/bison/build-3 install make install libtool-2.4.2 Konsole 2 mkdir build-3 && cd build-3 ../libtool-2.4.2/configure \ --prefix=/usr \ --build=i486-pc-linux-gnu \ --host=i486-pc-linux-gnu make make check # dauert etwas # All 106 tests passed # 104 tests behaved as expected. # 22 tests were skipped. make DESTDIR=/public/toolchain/libtool/build-3 install make install autoconf-2.69 Konsole 1 ./configure \ --prefix=/usr \ --build=i486-pc-linux-gnu \ --host=i486-pc-linux-gnu make make check # dauert etwas lange # 459 tests behaved as expected. # 44 tests were skipped. make DESTDIR=/public/toolchain/autoconf/build-3 install make install automake-1.12.3 Konsole 1 ./configure \ --prefix=/usr \ --build=i486-pc-linux-gnu \ --host=i486-pc-linux-gnu make make check # dauert etwas lange ca. 2 Std. # TOTAL: 2823 # PASS: 2659 # SKIP: 126 # XFAIL: 38 # FAIL: 0 # XPASS: 0 # ERROR: 0 make DESTDIR=/public/toolchain/automake/build-3 install make install flex-2.5.37 Konsole 1 patch -Np1 -i ../flex-2.5.37-bison-2.6.1-1.patch ./configure \ --prefix=/usr \ --build=i486-pc-linux-gnu \ --host=i486-pc-linux-gnu make make check # Tests succeeded: 46 # Tests FAILED: 0 make DESTDIR=/public/toolchain/flex/build-3 install make install ln -sfv libfl.a /usr/lib/libl.a cat > /usr/bin/lex << "EOF" #!/bin/sh # Begin /usr/bin/lex exec /usr/bin/flex -l "$@" # End /usr/bin/lex EOF chmod -v 755 /usr/bin/lex Make-3.82 ./configure \ --prefix=/usr \ --build=i486-pc-linux-gnu \ --host=i486-pc-linux-gnu make make check as root :-( su - root make check # 428 Tests in 105 Categories Complete ... No Failures :-) make DESTDIR=/public/toolchain/make/build-3 install make install Patch-2.6.1 ./configure \ --prefix=/usr \ --build=i486-pc-linux-gnu \ --host=i486-pc-linux-gnu make make check # All tests succeeded! make DESTDIR=/public/toolchain/patch/build-3 install make install Texinfo-4.13a ./configure \ --prefix=/usr \ --build=i486-pc-linux-gnu \ --host=i486-pc-linux-gnu make make check # pass make DESTDIR=/public/toolchain/texinfo/build-3 install make install gcc-java mkdir build-3-java && cd build-3-java ../gcc-4_2-branch/configure \ --prefix=/usr \ --libexecdir=/usr/lib \ --enable-clocale=gnu \ --enable-shared \ --enable-threads=posix \ --enable-__cxa_atexit \ --enable-languages=java \ --disable-libstdcxx-pch \ --disable-multilib \ --build=i486-pc-linux-gnu \ --host=i486-pc-linux-gnu \ --enable-libssp \ --disable-bootstrap \ --disable-tls make checking for zip... no checking for unzip... unzip configure: error: cannot find neither zip nor jar, cannot continue # install zip, unzip # weiter gehts make make -k check 2>&1 | tee gcc-check # dauert ca. 2 Std Test Run By holbru on Fri Aug 24 19:21:11 2012 Native configuration is i486-pc-linux-gnu === gcc Summary === # of expected passes 42525 # of unexpected successes 1 # of expected failures 114 # of unresolved testcases 1 # of untested testcases 28 # of unsupported tests 333 === g++ Summary === # of expected passes 13586 # of expected failures 67 # of unsupported tests 88 === libstdc++ Summary === # of expected passes 3853 # of expected failures 15 # of unsupported tests 316 === libmudflap Summary === # of expected passes 1814 === libffi Summary === # of expected passes 1084 # of unsupported tests 8 === libjava Summary === # of expected passes 6926 # of unexpected failures 28 # of expected failures 12 # of untested testcases 60 === libgomp Summary === # of expected passes 388 # of unsupported tests 55 make DESTDIR=/public/toolchain/gcc/build-3-java install gcc-objc mkdir build-3-objc && cd build-3-objc ../gcc-4_2-branch/configure \ --prefix=/usr \ --libexecdir=/usr/lib \ --enable-clocale=gnu \ --enable-shared \ --enable-threads=posix \ --enable-__cxa_atexit \ --enable-languages=c,objc \ --disable-libstdcxx-pch \ --disable-multilib \ --build=i486-pc-linux-gnu \ --host=i486-pc-linux-gnu \ --enable-libssp \ --disable-bootstrap \ --disable-tls make make -k check 2>&1 | tee gcc-check # dauert ca. 45 Min Test Run By holbru on Fri Aug 24 21:57:43 2012 Native configuration is i486-pc-linux-gnu === gcc Summary === # of expected passes 42525 # of unexpected successes 1 # of expected failures 114 # of unresolved testcases 1 # of untested testcases 28 # of unsupported tests 333 === objc Summary === # of expected passes 1806 # of expected failures 7 # of unsupported tests 24 === libmudflap Summary === # of expected passes 1680 # of unsupported tests 2 === libgomp Summary === # of expected passes 148 # of unsupported tests 6 make DESTDIR=/public/toolchain/gcc/build-3-objc install gcc-all fuer die shared libs mkdir build-3-all && cd build-3-all ../gcc-4_2-branch/configure \ --prefix=/usr \ --libexecdir=/usr/lib \ --enable-clocale=gnu \ --enable-shared \ --enable-threads=posix \ --enable-__cxa_atexit \ --enable-languages=c,c++,java,objc \ --disable-libstdcxx-pch \ --disable-multilib \ --build=i486-pc-linux-gnu \ --host=i486-pc-linux-gnu \ --enable-libssp \ --disable-bootstrap \ --disable-tls make make -k check 2>&1 | tee gcc-check # dauert 2 1/2 Std. === gcc Summary === # of expected passes 42525 # of unexpected successes 1 # of expected failures 114 # of unresolved testcases 1 # of untested testcases 28 # of unsupported tests 333 === g++ Summary === # of expected passes 13586 # of expected failures 67 # of unsupported tests 88 === objc Summary === # of expected passes 1806 # of expected failures 7 # of unsupported tests 24 === libstdc++ Summary === # of expected passes 3853 # of expected failures 15 # of unsupported tests 316 === libmudflap Summary === # of expected passes 1814 === libffi Summary === # of expected passes 1084 # of unsupported tests 8 === libjava Summary === # of expected passes 6926 # of unexpected failures 28 # of expected failures 12 # of untested testcases 60 === libgomp Summary === # of expected passes 388 # of unsupported tests 55 make DESTDIR=/public/toolchain/gcc/build-3-all install