Not sure this is the right place, so please redirect me if there exists someplace more appropriate.
I'm building a cross-toolchain for hurd following [1], and here's a few bugs I've found along the way: * Using the tarball from [2], I had to remove an option from GCC's configure line. The error is also discussed in [3], and followed the advice on its first response:
diff --git a/cross-gnu b/cross-gnu index 5dc161e..8d6edd5 100755 --- a/cross-gnu +++ b/cross-gnu @@ -119,7 +119,6 @@ if "$TARGET"-gcc --version > /dev/null 2>&1; then :; else # deactivated, as there is no fenv.h yet (glibc), and there is no autoconf # test for its presence. "$GCC_SRC"/configure \ - --enable-build-with-cxx \ --target="$TARGET" \ --prefix="$ROOT" \ --with-sysroot="$SYS_ROOT" \
* During docs compilation, GCC throws the following error: /home/lluis/os-tests/hurd/cross-build/src/gcc/gcc/doc/cppopts.texi:763: @itemx must follow @item make[1]: *** [doc/cpp.info] Error 1 make[1]: Leaving directory `/home/lluis/os-tests/hurd/cross-build/obj/gcc/gcc' make: *** [all-gcc] Error 2 I also get similar errors on other files. Replacing "itemx" by "item" in the first occurrence of a sequence of those fixes it. * The guide is missing this line for hurd: ( cd src/hurd && autoreconf -vi ) * Error compiling glibc LANGUAGE=C LC_ALL=C makeinfo -P /home/lluis/os-tests/hurd/cross-build/obj/glibc/manual/ --output=/home/lluis/os-tests/hurd/cross-build/obj/glibc/manual/libc.info libc.texinfo ./contrib.texi:1: @node seen before @end deftypefun ./startup.texi:44: warning: node next `Program Arguments' in menu `Environment Variables' and in sectioning `Getopt' differ ./startup.texi:261: warning: node prev `Environment Variables' in menu `Program Arguments' and in sectioning `Argp' differ make[2]: *** [/home/lluis/os-tests/hurd/cross-build/obj/glibc/manual/libc.info] Error 1 make[2]: Leaving directory `/home/lluis/os-tests/hurd/cross-build/dl/glibc/manual' make[1]: *** [manual/subdir_install] Error 2 make[1]: Leaving directory `/home/lluis/os-tests/hurd/cross-build/dl/glibc' make: *** [install] Error 2 Adding "@end deftypefun" at the top of file "manual/contrib.texi" fixes it, although that's just a crude workaround (not sure which file actually forgot the @end). * Error compiling libpthread libtool: compile: i686-pc-gnu-gcc -DHAVE_CONFIG_H -I. -I/home/lluis/os-tests/hurd/cross-build/src/libpthread -I/home/lluis/os-tests/hurd/cross-build/src/libpthread/sysdeps/mach/hurd/i386 -I/home/lluis/os-tests/hurd/cross-build/src/libpthread/sysdeps/mach/i386 -I/home/lluis/os-tests/hurd/cross-build/src/libpthread/sysdeps/i386 -I/home/lluis/os-tests/hurd/cross-build/src/libpthread/sysdeps/mach/hurd -I/home/lluis/os-tests/hurd/cross-build/src/libpthread/sysdeps/mach -I/home/lluis/os-tests/hurd/cross-build/src/libpthread/sysdeps/hurd -I/home/lluis/os-tests/hurd/cross-build/src/libpthread/sysdeps/generic -I/home/lluis/os-tests/hurd/cross-build/src/libpthread/sysdeps/posix -I/home/lluis/os-tests/hurd/cross-build/src/libpthread/pthread -I/home/lluis/os-tests/hurd/cross-build/src/libpthread/include -imacros config.h -imacros /home/lluis/os-tests/hurd/cross-build/src/libpthread/include/libc-symbols.h -imacros /home/lluis/os-tests/hurd/cross-build/src/libpthread/not-in-libc.h -D_IO_MTSAFE_IO -DENABLE_TLS -Wall -std=gnu99 -g -O2 -MT libpthread_la-pt-attr.lo -MD -MP -MF .deps/libpthread_la-pt-attr.Tpo -c /home/lluis/os-tests/hurd/cross-build/src/libpthread/pt-attr.c -fPIC -DPIC -o .libs/libpthread_la-pt-attr.o i686-pc-gnu-gcc: /home/lluis/os-tests/hurd/cross-build/src/libpthread/pt-attr.c: No such file or directory i686-pc-gnu-gcc: no input files make[1]: *** [libpthread_la-pt-attr.lo] Error 1 make[1]: Leaving directory `/home/lluis/os-tests/hurd/cross-build/obj/libpthread' make: *** [all] Error 2 Similar errors appear for other files, but I'm not sure what's the proper way to handle this, since the files are found by make through VPATH, but libtool receives the naked file name. I tried adding symlinks for some of them and works, but that's just way too ugly. Thanks, Lluis [1] http://www.gnu.org/software/hurd/toolchain/cross-gnu.html [2] ftp://ftp.gnu.org/gnu/gcc/gcc-4.5.4/gcc-4.5.4.tar.bz2 [3] http://gcc.gnu.org/ml/gcc-help/2011-10/msg00126.html -- "And it's much the same thing with knowledge, for whenever you learn something new, the whole world becomes that much richer." -- The Princess of Pure Reason, as told by Norton Juster in The Phantom Tollbooth