%general-entities; ]> Cross GCC-&gcc-version; - Final GCC cross tools, final Installation of GCC Cross Compiler Now we will prevent gcc from running the fixincludes script, so it doesn't modify any of the headers we have installed: cp -v gcc/Makefile.in{,.orig} sed -e 's@\./fixinc\.sh@-c true@' gcc/Makefile.in.orig > gcc/Makefile.in AR=ar LDFLAGS="-Wl,-rpath,/cross-tools/lib" \ ../gcc-&gcc-version;/configure --prefix=/cross-tools \ --build=${CLFS_HOST} --target=${CLFS_TARGET} --host=${CLFS_HOST} \ --with-sysroot=${CLFS} --with-local-prefix=/tools --disable-nls \ --enable-shared --enable-languages=c,c++ --enable-__cxa_atexit \ --with-mpfr=/cross-tools --with-gmp=/cross-tools --enable-c99 \ --enable-long-long --enable-threads=posix --disable-multilib The meaning of the new configure options: --enable-languages=c,c++ This option ensures that only the C and C++ compilers are built. --enable-__cxa_atexit This option allows use of __cxa_atexit, rather than atexit, to register C++ destructors for local statics and global objects and is essential for fully standards-compliant handling of destructors. It also affects the C++ ABI and therefore results in C++ shared libraries and C++ programs that are interoperable with other Linux distributions. --enable-c99 Enable C99 support for C programs. --enable-long-long Enables long long support in the compiler. --enable-threads=posix This enables C++ exception handling for multi-threaded code. Continue with compiling the package: make AS_FOR_TARGET="${CLFS_TARGET}-as" \ LD_FOR_TARGET="${CLFS_TARGET}-ld" Install the package: make install <para>Details on this package are located in <xref linkend="contents-gcc" role="."/></para> </sect2> </sect1>