Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 175701 - glibc 2.5 build fails
Summary: glibc 2.5 build fails
Status: RESOLVED INVALID
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Core system (show other bugs)
Hardware: Sparc Linux
: High normal (vote)
Assignee: Sparc Porters
URL:
Whiteboard:
Keywords:
: 182477 (view as bug list)
Depends on:
Blocks:
 
Reported: 2007-04-23 13:52 UTC by Konstantin Agouros
Modified: 2007-06-18 19:51 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
Buildlog of glibc ebuild on sparc system (build.log.bz2,35.70 KB, text/plain)
2007-04-25 15:30 UTC, Konstantin Agouros
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Konstantin Agouros 2007-04-23 13:52:17 UTC
emerge of glibc 2.5 fails on sparc and sparc64 with the following message in sparc32:

ld-sparc32-sparc-unknown-linux-gnu-linuxthreads/posix/wait.o.dt -MT /var/tmp/por
tage/sys-libs/glibc-2.5/work/build-sparc32-sparc-unknown-linux-gnu-linuxthreads/
posix/wait.o
.././scripts/mkinstalldirs /var/tmp/portage/sys-libs/glibc-2.5/work/build-sparc3
2-sparc-unknown-linux-gnu-linuxthreads/posix
(echo '#include <sysdep-cancel.h>'; \
         echo 'PSEUDO (__waitpid, waitpid, 3)'; \
         echo ' ret'; \
         echo 'PSEUDO_END(__waitpid)'; \
         echo 'libc_hidden_def (__waitpid)'; \
         echo 'weak_alias (__waitpid, waitpid)'; \
         echo 'libc_hidden_weak (waitpid)'; \
         echo 'weak_alias (__waitpid, __libc_waitpid)'; \
         echo 'libc_hidden_weak (__libc_waitpid)'; \
        ) | sparc-unknown-linux-gnu-gcc -c -I../include -I/var/tmp/portage/sys-l
ibs/glibc-2.5/work/build-sparc32-sparc-unknown-linux-gnu-linuxthreads/posix -I/vls.h -DASSEMBLER -D__ASSEMBLY__ -Wa,--noexecstack -Wa,--noexecstack -x assembler
-with-cpp -o /var/tmp/portage/sys-libs/glibc-2.5/work/build-sparc32-sparc-unknow
n-linux-gnu-linuxthreads/posix/waitpid.o -
<stdin>: Assembler messages:
<stdin>:2: Error: Unknown opcode: `syscall_error_handler SYSCALL_ERROR_HANDLER_E
NTRY(__syscall_error_handler2).global __errno_location'
make[2]: *** [/var/tmp/portage/sys-libs/glibc-2.5/work/build-sparc32-sparc-unkno
wn-linux-gnu-linuxthreads/posix/waitpid.o] Error 1
make[2]: Leaving directory `/var/tmp/portage/sys-libs/glibc-2.5/work/glibc-2.5/p
osix'
make[1]: *** [posix/subdir_lib] Error 2
make[1]: Leaving directory `/var/tmp/portage/sys-libs/glibc-2.5/work/glibc-2.5'
make: *** [all] Error 2

!!! ERROR: sys-libs/glibc-2.5 failed.
Call stack:
  ebuild.sh, line 1614:   Called dyn_compile
  ebuild.sh, line 971:   Called qa_call 'src_compile'
  environment, line 4115:   Called src_compile
  glibc-2.5.ebuild, line 1130:   Called toolchain-glibc_src_compile
  glibc-2.5.ebuild, line 235:   Called die

!!! make for sparc32 failed
!!! If you need support, post the topmost build error, and the call stack if rel
evant.
!!! A complete build log is located at '/var/tmp/portage/sys-libs/glibc-2.5/temp
/build.log'.



Reproducible: Always

Steps to Reproduce:
1.emerge -u glibc

Actual Results:  
see description 

Expected Results:  
build of glibc

make.conf for 32bit system

USE="-X"
CHOST="sparc-unknown-linux-gnu"
CFLAGS="-mcpu=v8 -O3 -pipe"
CXXFLAGS="${CFLAGS}"
Comment 1 Gustavo Zacarias (RETIRED) gentoo-dev 2007-04-23 16:59:05 UTC
emerge --info please.
also please note sparc32 machines are no longer supported.
Comment 2 Konstantin Agouros 2007-04-23 18:05:45 UTC
Portage 2.1.2.2 (default-linux/sparc/sparc64/2006.1, gcc-3.4.6, glibc-2.3.6-r5, 
2.4.34-sparc-grsec sparc64)
=================================================================
System uname: 2.4.34-sparc-grsec sparc64 sun4u
Gentoo Base System release 1.12.9
Timestamp of tree: Sun, 22 Apr 2007 22:00:10 +0000
dev-lang/python:     2.4.3-r4
dev-python/pycrypto: 2.0.1-r5
sys-apps/sandbox:    1.2.17
sys-devel/autoconf:  2.13, 2.61
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10
sys-devel/binutils:  2.17
sys-devel/gcc-config: 1.3.15-r1
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.19.2-r2
ACCEPT_KEYWORDS="sparc"
AUTOCLEAN="yes"
CBUILD="sparc-unknown-linux-gnu"
CFLAGS="-mcpu=ultrasparc -O3 -pipe"
CHOST="sparc-unknown-linux-gnu"
CONFIG_PROTECT="/etc"
CONFIG_PROTECT_MASK="/etc/env.d /etc/gconf /etc/terminfo"
CXXFLAGS="-O2 -mcpu=ultrasparc -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="distlocks metadata-transfer sandbox sfperms strict"
GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/linux/
distributions/gentoo"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress 
--force --whole-file --delete --delete-after --stats --timeout=180 --exclude=/di
stfiles --exclude=/local --exclude=/packages --filter=H_**/files/digest-*"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="X apache2 arts berkdb bitmap-fonts caps cli cracklib crypt cups dri eds emb
oss encode esd fbcon foomaticdb fortran gcc64 gdbm gif gnome gstreamer gtk gtk2 
iconv imlib ipv6 isdnlog ithreads jpeg kde ldap libwww mad midi mikmod motif mpe
g ncurses nls ogg opengl oss pam pcre perl png pppd python qt3 readline reflecti
on sdl session sparc spell spl ssl tcpd truetype truetype-fonts type1-fonts vorb
is xml xorg xv zlib" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop e
mpty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi nul
l plug rate route share shm softvol" ELIBC="glibc" INPUT_DEVICES="keyboard mouse
 evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lc
dm001 mtxorb ncurses text" USERLAND="GNU" VIDEO_CARDS="sunffb sunleo"
Unset:  CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, LINGU
AS, MAKEOPTS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
, PORTDIR_OVERLAY



also please note that it happens in the sparc32 part of the compilation on a 64bit machine
Comment 3 Gustavo Zacarias (RETIRED) gentoo-dev 2007-04-23 18:09:17 UTC
You're using the wrong kernel or profile depending on your perspective.
Either switch to 2006.1/2.4 if you plan on sticking with a 2.4 kernel or switch to a 2.6 kernel.
The 2006.0 and 2006.1 profiles (without trailing /2.4) are intended for 2.6 kernels ONLY. Actually your system might be broken in a way that your machine won't be able to reboot, so i suggest you change to a 2.6 kernel or change back to a 2.4 profile (which won't be supported for long) and rebuild linux-headers & glibc.
glibc-2.5 must use nptl btw, it's masked on 2.4 profiles to avoid this kind of problems.
Comment 4 Konstantin Agouros 2007-04-23 18:10:48 UTC
ah ok... so is it worth using 'sparc-sources' or shall I simply switch to gentoo-sources for a sparc machine as well?
Comment 5 Gustavo Zacarias (RETIRED) gentoo-dev 2007-04-23 18:12:19 UTC
sparc-sources = 2.4 kernel only.
gentoo-sources = 2.6 recommended now.
if you want grsec you can use hardened-sources but you'll need to package.keywords enable it (it's just ~sparc). also note that we don't fully support these with sparc patches (should work mostly fine depending on machine model).
Comment 6 Konstantin Agouros 2007-04-25 15:30:03 UTC
Created attachment 117232 [details]
Buildlog of glibc ebuild on sparc system
Comment 7 PaX Team 2007-05-31 19:36:23 UTC
note that this is basically bug #173263 and the workaround is USE=nptlonly (on sparc32). apparently linuxthreads/sparc got some bitrot and no longer compiles, hence the need for nptlonly, which then forces the use of linux 2.6 of course. now this works for sparc32, sparc64 still fails because the glibc ebuild explicitly disables TLS support there which in turn still enables linuxthreads... i guess the want_nptl or the want_tls logic needs a change (want_tls says something about TLS already being supported on sparc64 since glibc-2.3.6).
Comment 8 Jakub Moc (RETIRED) gentoo-dev 2007-06-18 19:51:15 UTC
*** Bug 182477 has been marked as a duplicate of this bug. ***