Debian GNU/Hurd: error building hurd binaries without compiler optimiza
From:
computer.enthusiastic
Subject:
Debian GNU/Hurd: error building hurd binaries without compiler optimization option
Date:
Tue, 15 Sep 2009 23:43:46 +0200
Hello,
I'm trying to natively rebuild (on a Debian GNU/Hurd
system) some binaries from the hurd source package (20090404-1), but I
can't figure out how to solve a compilation error.
My system has been recently updated using "apt-get update" and "apt-get upgrade" commands.
I have succesfully downloaded the hurd source package with the following output: # apt-get source hurd
Reading package lists... Done Building dependency tree Reading state information... Done Need to get 3,220kB of source archives. Get:1 http://ftp.de.debian.org unstable/main hurd 20090404-1 (dsc) [1,504B]
Get:2 http://ftp.de.debian.org unstable/main hurd 20090404-1 (tar) [3,111kB] Get:3 http://ftp.de.debian.org unstable/main hurd 20090404-1 (diff) [107kB]
Fetched 3,220kB in 5s (578kB/s) dpkg-source: info: extracting hurd in hurd-20090404 dpkg-source: info: unpacking hurd_20090404.orig.tar.gz dpkg-source: info: applying hurd_20090404-1.diff.gz
Then, I try to manually build binaries with compiler optimization disabled for debugging purpouses; to accomplish to this task,
I remove the '-O2' option from ./configure file and then I give the commands:
# cd hurd-20090404/
# ./configure checking build system type... i686-unknown-gnu0.3 checking host system type... i686-unknown-gnu0.3 checking for a BSD-compatible install... /bin/bash /home/amluongo/hurd-debian-bis/hurd-20090404/install-sh -c -C
checking for gawk... gawk checking for gcc... gcc checking for C compiler default output file name... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables...
checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ISO C89... none needed checking for ld... ld
checking for objcopy... objcopy checking for ar... ar checking for ranlib... ranlib checking for mig... mig checking for crypt in -lcrypt... yes checking whether mig supports the retcode keyword... yes checking for ld --version-script... yes
checking for libio... yes checking for getgrouplist... yes checking for uselocale... yes checking for -fgnu89-inline... yes checking for store_part_open in -lstore_part... no checking boot store types... device remap gunzip bunzip2
checking for initscr in -lncursesw... yes checking for ncursesw include dir... /usr/include/ncursesw configure: creating ./config.status config.status: creating config.make config.status: WARNING: config.make.in seems to ignore the --datarootdir setting
The Makefile is succesfully built and I give the "make" command: # make [..snip..many..files..compiled..snip..] make[1]: Entering directory `/home/amluongo/hurd-debian/hurd-20090404/libpthread'
gcc -std=gnu99 -fgnu89-inline -Wall -g -g -I. -I.. -I../include
-I../include -D_GNU_SOURCE -D_IO_MTSAFE_IO -D_FILE_OFFSET_BITS=64
-DPACKAGE_NAME=\"\" -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\"
-DPACKAGE_STRING=\"\" -DPACKAGE_BUGREPORT=\"\" -DHAVE_MIG_RETCODE=1
-DHAVE_GETGROUPLIST=1 -DHAVE_USELOCALE=1 -I./sysdeps/mach/hurd/i386
-I./sysdeps/mach/i386 -I./sysdeps/i386 -I./sysdeps/mach/hurd
-I./sysdeps/mach -I./sysdeps/hurd -I./sysdeps/generic -I./sysdeps/posix
-I./pthread -I./include -imacros ./include/libc-symbols.h -imacros
./not-in-libc.h -c -o pt-spin-inlines.o ./pthread/pt-spin-inlines.c
./pthread/pt-spin-inlines.c:31: error: '__pthread_spin_destroy' undeclared here (not in a function)
./pthread/pt-spin-inlines.c:31: warning: type defaults to 'int' in declaration of 'pthread_spin_destroy'
./pthread/pt-spin-inlines.c:31: error: 'pthread_spin_destroy' redeclared as different kind of symbol
./include/pthread/pthread.h:439: error: previous declaration of 'pthread_spin_destroy' was here
./pthread/pt-spin-inlines.c:32: error: '__pthread_spin_init' undeclared here (not in a function)
./pthread/pt-spin-inlines.c:32: warning: type defaults to 'int' in declaration of 'pthread_spin_init'
./pthread/pt-spin-inlines.c:32: error: 'pthread_spin_init' redeclared as different kind of symbol
./include/pthread/pthread.h:443: error: previous declaration of 'pthread_spin_init' was here
./pthread/pt-spin-inlines.c:33: error: '__pthread_spin_trylock' undeclared here (not in a function)
./pthread/pt-spin-inlines.c:33: warning: type defaults to 'int' in declaration of 'pthread_spin_trylock'
./pthread/pt-spin-inlines.c:33: error: 'pthread_spin_trylock' redeclared as different kind of symbol
./include/pthread/pthread.h:451: error: previous declaration of 'pthread_spin_trylock' was here
./pthread/pt-spin-inlines.c:34: error: '__pthread_spin_unlock' undeclared here (not in a function)
./pthread/pt-spin-inlines.c:34: warning: type defaults to 'int' in declaration of 'pthread_spin_unlock'
./pthread/pt-spin-inlines.c:34: error: 'pthread_spin_unlock' redeclared as different kind of symbol
./include/pthread/pthread.h:454: error: previous declaration of 'pthread_spin_unlock' was here
make[1]: *** [pt-spin-inlines.o] Error 1
make[1]: Leaving directory `/home/amluongo/hurd-debian/hurd-20090404/libpthread'
make: *** [libpthread] Error 2
The strange thing is that only few days ago I compiled without
errors at least the content of certain directories (for example
/console or /console-client) with the debug option enabled and the
optimization disabled.
Is it a general issue or is it local to my installation ?