[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
cross-gnu
From: |
Lluís |
Subject: |
cross-gnu |
Date: |
Wed, 03 Jul 2013 18:31:18 +0300 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.3 (gnu/linux) |
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