Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 250630 - building a cross-compiler for sparc with gcc-4.3.2 fails
Summary: building a cross-compiler for sparc with gcc-4.3.2 fails
Status: RESOLVED INVALID
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Gentoo Toolchain Maintainers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-12-11 18:02 UTC by Tobias Klausmann (RETIRED)
Modified: 2008-12-24 13:51 UTC (History)
0 users

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


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Tobias Klausmann (RETIRED) gentoo-dev 2008-12-11 18:02:43 UTC
MAKEOPTS=-j1 crossdev --b 2.18-r3 --k 2.6.23-r3 --l 2.6.1  --without-headers sparc
--------------------------------------------------------------------------------
 * Host Portage ARCH:     amd64
 * Target Portage ARCH:   sparc
 * Target System:         sparc-unknown-linux-gnu
 * Stage:                 4 (C/C++ compiler)

 * binutils:              binutils-2.18-r3
 * gcc:                   gcc-[latest]
 * headers:               linux-headers-2.6.23-r3
 * libc:                  glibc-2.6.1

 * PORTDIR_OVERLAY:       /usr/local/portage
 * PORT_LOGDIR:           /var/log/portage
 * PKGDIR:                /usr/portage/packages/cross/sparc-unknown-linux-gnu
 * PORTAGE_TMPDIR:        /var/tmp/cross/sparc-unknown-linux-gnu
  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  ~  -  _  -  
 * Forcing the latest versions of {binutils,gcc}-config/gnuconfig ...     [ ok ]
 * Log: /var/log/portage/cross-sparc-unknown-linux-gnu-binutils.log
 * Emerging cross-binutils ...                                            [ ok ]
 * Log: /var/log/portage/cross-sparc-unknown-linux-gnu-gcc-stage1.log
 * Emerging cross-gcc-stage1 ...                                          [ ok ]
 * Log: /var/log/portage/cross-sparc-unknown-linux-gnu-linux-headers.log
 * Emerging cross-linux-headers ...                                       [ ok ]
 * Log: /var/log/portage/cross-sparc-unknown-linux-gnu-glibc.log
 * Emerging cross-glibc ...                                               [ ok ]
 * Log: /var/log/portage/cross-sparc-unknown-linux-gnu-gcc-stage2.log
 * Emerging cross-gcc-stage2 ...

 * gcc failed :(
 * If you file a bug, please attach the following logfiles:
 * /var/log/portage/cross-sparc-unknown-linux-gnu-info.log
 * /var/log/portage/cross-sparc-unknown-linux-gnu-gcc-stage2.log

From the build log:
/var/tmp/cross/sparc-unknown-linux-gnu/portage/cross-sparc-unknown-linux-gnu/gcc-4.3.2/work/build/./gcc/xgcc -B/var/tmp/cross/sparc-unknown-linux-gnu/portage/cross-sparc-unknown-linux-gnu/gcc-4.3.2/work/build/./gcc/ -B/usr/sparc-unknown-linux-gnu/bin/ -B/usr/sparc-unknown-linux-gnu/lib/ -isystem /usr/sparc-unknown-linux-gnu/include -isystem /usr/sparc-unknown-linux-gnu/sys-include -O2 -g -O2 -pipe -O2  -O2 -g -O2 -pipe   -DIN_GCC -DCROSS_DIRECTORY_STRUCTURE   -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition  -isystem ./include  -fPIC -g -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED   -I. -I. -I../.././gcc -I/var/tmp/cross/sparc-unknown-linux-gnu/portage/cross-sparc-unknown-linux-gnu/gcc-4.3.2/work/gcc-4.3.2/libgcc -I/var/tmp/cross/sparc-unknown-linux-gnu/portage/cross-sparc-unknown-linux-gnu/gcc-4.3.2/work/gcc-4.3.2/libgcc/. -I/var/tmp/cross/sparc-unknown-linux-gnu/portage/cross-sparc-unknown-linux-gnu/gcc-4.3.2/work/gcc-4.3.2/libgcc/../gcc -I/var/tmp/cross/sparc-unknown-linux-gnu/portage/cross-sparc-unknown-linux-gnu/gcc-4.3.2/work/gcc-4.3.2/libgcc/../include  -DHAVE_CC_TLS -o _eprintf.o -MT _eprintf.o -MD -MP -MF _eprintf.dep -DL_eprintf -c /var/tmp/cross/sparc-unknown-linux-gnu/portage/cross-sparc-unknown-linux-gnu/gcc-4.3.2/work/gcc-4.3.2/libgcc/../gcc/libgcc2.c \
          -fvisibility=hidden -DHIDE_EXPORTS
/var/tmp/cross/sparc-unknown-linux-gnu/portage/cross-sparc-unknown-linux-gnu/gcc-4.3.2/work/gcc-4.3.2/libgcc/../gcc/libgcc2.c: In function ‘__eprintf’:
/var/tmp/cross/sparc-unknown-linux-gnu/portage/cross-sparc-unknown-linux-gnu/gcc-4.3.2/work/gcc-4.3.2/libgcc/../gcc/libgcc2.c:2009: warning: implicit declaration of function ‘fprintf’
/var/tmp/cross/sparc-unknown-linux-gnu/portage/cross-sparc-unknown-linux-gnu/gcc-4.3.2/work/gcc-4.3.2/libgcc/../gcc/libgcc2.c:2009: warning: incompatible implicit declaration of built-in function ‘fprintf’
/var/tmp/cross/sparc-unknown-linux-gnu/portage/cross-sparc-unknown-linux-gnu/gcc-4.3.2/work/gcc-4.3.2/libgcc/../gcc/libgcc2.c:2009: error: ‘stderr’ undeclared (first use in this function)
/var/tmp/cross/sparc-unknown-linux-gnu/portage/cross-sparc-unknown-linux-gnu/gcc-4.3.2/work/gcc-4.3.2/libgcc/../gcc/libgcc2.c:2009: error: (Each undeclared identifier is reported only once
/var/tmp/cross/sparc-unknown-linux-gnu/portage/cross-sparc-unknown-linux-gnu/gcc-4.3.2/work/gcc-4.3.2/libgcc/../gcc/libgcc2.c:2009: error: for each function it appears in.)
/var/tmp/cross/sparc-unknown-linux-gnu/portage/cross-sparc-unknown-linux-gnu/gcc-4.3.2/work/gcc-4.3.2/libgcc/../gcc/libgcc2.c:2010: warning: implicit declaration of function ‘fflush’
/var/tmp/cross/sparc-unknown-linux-gnu/portage/cross-sparc-unknown-linux-gnu/gcc-4.3.2/work/gcc-4.3.2/libgcc/../gcc/libgcc2.c:2011: warning: implicit declaration of function ‘abort’
/var/tmp/cross/sparc-unknown-linux-gnu/portage/cross-sparc-unknown-linux-gnu/gcc-4.3.2/work/gcc-4.3.2/libgcc/../gcc/libgcc2.c:2011: warning: incompatible implicit declaration of built-in function ‘abort’
make[2]: *** [_eprintf.o] Error 1
make[2]: Leaving directory `/var/tmp/cross/sparc-unknown-linux-gnu/portage/cross-sparc-unknown-linux-gnu/gcc-4.3.2/work/build/sparc-unknown-linux-gnu/libgcc'
make[1]: *** [all-target-libgcc] Error 2
make[1]: Leaving directory `/var/tmp/cross/sparc-unknown-linux-gnu/portage/cross-sparc-unknown-linux-gnu/gcc-4.3.2/work/build'
make: *** [all] Error 2

# emerge --info 
Portage 2.1.6_rc3 (default/linux/amd64/2008.0, gcc-4.3.2, glibc-2.8_p20080602-r0, 2.6.27.5 x86_64)
=================================================================
System uname: Linux-2.6.27.5-x86_64-AMD_Athlon-tm-_64_X2_Dual_Core_Processor_5600+-with-glibc2.2.5
Timestamp of tree: Fri, 05 Dec 2008 21:26:01 +0000
distcc 3.1 x86_64-pc-linux-gnu [disabled]
app-shells/bash:     3.2_p48
dev-java/java-config: 1.3.7-r1, 2.1.6-r1
dev-lang/python:     2.5.2-r8, 3.0
dev-util/cmake:      2.6.2
sys-apps/baselayout: 2.0.0
sys-apps/openrc:     0.3.0-r1
sys-apps/sandbox:    1.2.18.1-r3
sys-devel/autoconf:  2.13, 2.63
sys-devel/automake:  1.5, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.2
sys-devel/binutils:  2.19
sys-devel/gcc-config: 1.4.0-r4
sys-devel/libtool:   2.2.6a
virtual/os-headers:  2.6.27-r2
ACCEPT_KEYWORDS="amd64 ~amd64"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -march=k8 -pipe -msse3"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/config"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c /etc/udev/rules.d"
CXXFLAGS="-O2 -march=k8 -pipe -msse3"
DISTDIR="/usr/portage/distfiles"
FEATURES="buildsyspkg distlocks fixpackages parallel-fetch protect-owned sandbox sfperms strict unmerge-orphans userfetch userpriv usersandbox"
GENTOO_MIRRORS="http://mirrors.sec.informatik.tu-darmstadt.de/gentoo/ http://gentoo.tiscali.nl/"
INSTALL_MASK="/etc/udev/rules.d/75-persistent-net-generator.rules"
LC_ALL="en_US.utf8"
LDFLAGS="-Wl,-O1"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_EXTRA_OPTS="--exclude lost+found"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync5.de.gentoo.org/gentoo-portage"
USE="3dnow 3dnowext X a52 acl alsa amd64 apache2 audacious audiofile bash-completion berkdb bzip2 calendar caps cdparanoia cdr cli cracklib crypt cups dio dri dts dvd dvdr dvdread encode ethereal exif ffmpeg fftw firefox fortran ftp gdbm glitz gpm gtk iconv imlib2 isdnlog jpeg kdeenablefinal ladcca lame lcms lua mad matroska midi mmap mmx mng moznocompose moznoirc moznomail mozsvg mp3 mpeg mplayer mudflap multilib mysqli ncurses nls nptl nptlonly offensive ogg opengl openmp pam pcre pdflib perl png ppds pppd python qt4 readline recode reflection session sharedmem sockets sox spl srt sse sse2 ssl svg sysfs szip tcpd tetex theora unicode usb v4l v4l2 vcd vim vim-pager vlm vorbis wmf xcb xcomposite xorg xosd xpm xscreensaver xvid zlib" ALSA_CARDS="emu10k1 ice1724" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CAMERAS="ptp2" ELIBC="glibc" INPUT_DEVICES="keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" USERLAND="GNU" VIDEO_CARDS="vesa nvidia nv"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, LANG, LINGUAS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS
Comment 1 SpanKY gentoo-dev 2008-12-22 03:52:14 UTC
you forced --without-headers -> you get to pick up the pieces
Comment 2 Tobias Klausmann (RETIRED) gentoo-dev 2008-12-22 10:13:07 UTC
Well, various docs told me to do that plus not using --without-headers doesn't work either.
Comment 3 Tobias Klausmann (RETIRED) gentoo-dev 2008-12-22 10:23:59 UTC
And here's the end of the build log for that:


/var/tmp/cross/sparc-unknown-linux-gnu/portage/cross-sparc-unknown-linux-gnu/gcc-4.3.2/work/build/./gcc/xgcc -B/var/tmp/cross/sparc-unknown-linux-gnu/portage/cross-sparc-unknown-linux-gnu/gcc-4.3.2/work/build/./gcc/ -B/usr/sparc-unknown-linux-gnu/bin/ -B/usr/sparc-unknown-linux-gnu/lib/ -isystem /usr/sparc-unknown-linux-gnu/include -isystem /usr/sparc-unknown-linux-gnu/sys-include -O2 -g -O2 -pipe -O2  -O2 -g -O2 -pipe   -DIN_GCC -DCROSS_DIRECTORY_STRUCTURE   -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition  -isystem ./include  -fPIC -g -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED   -I. -I. -I../.././gcc -I/var/tmp/cross/sparc-unknown-linux-gnu/portage/cross-sparc-unknown-linux-gnu/gcc-4.3.2/work/gcc-4.3.2/libgcc -I/var/tmp/cross/sparc-unknown-linux-gnu/portage/cross-sparc-unknown-linux-gnu/gcc-4.3.2/work/gcc-4.3.2/libgcc/. -I/var/tmp/cross/sparc-unknown-linux-gnu/portage/cross-sparc-unknown-linux-gnu/gcc-4.3.2/work/gcc-4.3.2/libgcc/../gcc -I/var/tmp/cross/sparc-unknown-linux-gnu/portage/cross-sparc-unknown-linux-gnu/gcc-4.3.2/work/gcc-4.3.2/libgcc/../include  -DHAVE_CC_TLS -o _eprintf.o -MT _eprintf.o -MD -MP -MF _eprintf.dep -DL_eprintf -c /var/tmp/cross/sparc-unknown-linux-gnu/portage/cross-sparc-unknown-linux-gnu/gcc-4.3.2/work/gcc-4.3.2/libgcc/../gcc/libgcc2.c \
          -fvisibility=hidden -DHIDE_EXPORTS
/var/tmp/cross/sparc-unknown-linux-gnu/portage/cross-sparc-unknown-linux-gnu/gcc-4.3.2/work/gcc-4.3.2/libgcc/../gcc/libgcc2.c: In function ‘__eprintf’:
/var/tmp/cross/sparc-unknown-linux-gnu/portage/cross-sparc-unknown-linux-gnu/gcc-4.3.2/work/gcc-4.3.2/libgcc/../gcc/libgcc2.c:2009: warning: implicit declaration of function ‘fprintf’
/var/tmp/cross/sparc-unknown-linux-gnu/portage/cross-sparc-unknown-linux-gnu/gcc-4.3.2/work/gcc-4.3.2/libgcc/../gcc/libgcc2.c:2009: warning: incompatible implicit declaration of built-in function ‘fprintf’
/var/tmp/cross/sparc-unknown-linux-gnu/portage/cross-sparc-unknown-linux-gnu/gcc-4.3.2/work/gcc-4.3.2/libgcc/../gcc/libgcc2.c:2009: error: ‘stderr’ undeclared (first use in this function)
/var/tmp/cross/sparc-unknown-linux-gnu/portage/cross-sparc-unknown-linux-gnu/gcc-4.3.2/work/gcc-4.3.2/libgcc/../gcc/libgcc2.c:2009: error: (Each undeclared identifier is reported only once
/var/tmp/cross/sparc-unknown-linux-gnu/portage/cross-sparc-unknown-linux-gnu/gcc-4.3.2/work/gcc-4.3.2/libgcc/../gcc/libgcc2.c:2009: error: for each function it appears in.)
/var/tmp/cross/sparc-unknown-linux-gnu/portage/cross-sparc-unknown-linux-gnu/gcc-4.3.2/work/gcc-4.3.2/libgcc/../gcc/libgcc2.c:2010: warning: implicit declaration of function ‘fflush’
/var/tmp/cross/sparc-unknown-linux-gnu/portage/cross-sparc-unknown-linux-gnu/gcc-4.3.2/work/gcc-4.3.2/libgcc/../gcc/libgcc2.c:2011: warning: implicit declaration of function ‘abort’
/var/tmp/cross/sparc-unknown-linux-gnu/portage/cross-sparc-unknown-linux-gnu/gcc-4.3.2/work/gcc-4.3.2/libgcc/../gcc/libgcc2.c:2011: warning: incompatible implicit declaration of built-in function ‘abort’
make[2]: *** [_eprintf.o] Error 1
make[2]: Leaving directory `/var/tmp/cross/sparc-unknown-linux-gnu/portage/cross-sparc-unknown-linux-gnu/gcc-4.3.2/work/build/sparc-unknown-linux-gnu/libgcc'
make[1]: *** [all-target-libgcc] Error 2
make[1]: Leaving directory `/var/tmp/cross/sparc-unknown-linux-gnu/portage/cross-sparc-unknown-linux-gnu/gcc-4.3.2/work/build'
make: *** [all] Error 2

Same error in the same spot (stage2 of gcc)
Comment 4 Tobias Klausmann (RETIRED) gentoo-dev 2008-12-22 21:42:05 UTC
Reopening as --without-headers isn't the culprit.
Comment 5 SpanKY gentoo-dev 2008-12-23 03:44:05 UTC
i dont know what docs you're referring to.  just because you read a random place to do XYZ doesnt make it correct.

glibc-2.6.x isnt supported.  gcc-4.3.x needs libc headers and if you use --without-headers, that's your problem.
Comment 6 Tobias Klausmann (RETIRED) gentoo-dev 2008-12-23 11:10:26 UTC
Also happens with gcc 4.1.2. Should've tried that first :-/

I did a crossdev -C sparc first, then: 

crossdev --b 2.18-r3 --k 2.6.23-r3 --l 2.6.1 --g 4.1.2  sparc

which (near as I can tell) should emerge only stable versions and as such should work, but I *still* get the very same error mentioned above.
Comment 7 SpanKY gentoo-dev 2008-12-23 12:15:24 UTC
there is simply no resources to track cross-compiling for many versions.  i really only track latest ~arch.  anything older may work.

binutils-2.19/glibc-2.9/gcc-4.3.2 seems like an OK combo on my system.
Comment 8 Tobias Klausmann (RETIRED) gentoo-dev 2008-12-23 13:02:04 UTC
I just tried using the ~sparc versions (same as you mentioned) and I still get the *very same* error. I'm beginning to suspect I must have something wrong methodically. You *can* install multiple crossdev-setups on one machine, right? I have an alpha environment set up which works flawlessly.
Comment 9 SpanKY gentoo-dev 2008-12-24 13:51:07 UTC
all toolchain packages are slotted based on CTARGET.  all binutils/gcc packages are additionally slotted based on VER.  so no CTARGET should ever conflict with any other CTARGET.