The crossdev tools fail when trying to emerge gcc stage2 at the end of the build process. Reproducible: Always Steps to Reproduce: 1. crossdev -S -t arm-softfloat-linux-gnu Actual Results: * Emerging cross-gcc-stage2 ... * gcc failed :( * If you file a bug, please attach the following logfiles: * /var/log/portage/cross-arm-softfloat-linux-gnu-info.log * /var/log/portage/cross-arm-softfloat-linux-gnu-gcc-stage2.log Expected Results: It should have finished the emerge I've tried almost every combination of things and none of them work for arm-softfloat-linux-gnu. I think this might be an upstream bug with gcc.
Phantom ~ # emerge --info Portage 2.1.6.13 (default/linux/amd64/10.0/desktop, gcc-4.3.4, glibc-2.9_p20081201-r2, 2.6.32-gentoo-Phantom-G15 x86_64) ================================================================= System uname: Linux-2.6.32-gentoo-Phantom-G15-x86_64-AMD_Phenom-tm-_9850_Quad-Core_Processor-with-gentoo-1.12.13 Timestamp of tree: Wed, 06 Jan 2010 07:00:01 +0000 distcc 3.1 x86_64-pc-linux-gnu [disabled] ccache version 2.4 [enabled] app-shells/bash: 4.0_p35 dev-java/java-config: 2.1.9-r2 dev-lang/python: 2.6.4 dev-util/ccache: 2.4-r7 dev-util/cmake: 2.6.4-r3 sys-apps/baselayout: 1.12.13 sys-apps/sandbox: 1.6-r2 sys-devel/autoconf: 2.13, 2.63-r1 sys-devel/automake: 1.9.6-r2, 1.10.2 sys-devel/binutils: 2.18-r3 sys-devel/gcc-config: 1.4.1 sys-devel/libtool: 2.2.6b virtual/os-headers: 2.6.27-r2 ACCEPT_KEYWORDS="amd64" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-march=amdfam10 -O2 -pipe" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/share/X11/xkb" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c /etc/udev/rules.d" CXXFLAGS="-march=amdfam10 -O2 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="ccache distlocks fixpackages parallel-fetch protect-owned sandbox sfperms strict unmerge-orphans userfetch" GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/linux/distributions/gentoo" LDFLAGS="-Wl,-O1" LINGUAS="en en_US" MAKEOPTS="-j5" PKGDIR="/usr/portage/packages" PORTAGE_CONFIGROOT="/" 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/portage" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="3dnow X Xaw3d a52 aac aalib acl acpi alsa amd64 aspell bash-completion berkdb blas bluetooth boost branding bzip2 cairo cdda cdr cgi cli consolekit cpudetection cracklib crypt cscope cups curl cxx dbus dga dia dmx dri dts dvb dvd dvdr eds emboss encode evo exif expat fam fastcgi fbcon ffmpeg fftw firefox flac fltk fontforge foomaticdb fortran ftp fts3 gci gd gdbm gif gmp gnome gnome-keyring gnome-print gnuplot gnutls gpg gpm grace gsl gstreamer gtk gzip hal iceweasel iconv icu imagemagick inkjar inotify ipv6 irc jack java javascript joystick jpeg jpeg2k kqemu ladspa latex latex3 lcms ldap libnotify lzo mad mikmod mmx mng modules mozdevelop mp3 mp4 mpeg mplayer mudflap multilib musepack ncurses netpbm nextaw nls npp nptl nptlonly nsplugin ogg opengl openmp pam pcre pdf perl php physfs plotutils png postscript ppds pppd profile python qt3support qt4 quicktime readline reflection sdl session sharedmem smp sndfile snmp sockets sparse spell spl sqlite sse sse2 ssl startup-notification svg sysfs syslog tcl tcpd threads thunar tiff timidity tk truetype unicode usb v4l2 vim-syntax vorbis wav wavpack wifi wmf wxwidgets x264 xcomposite xft xinerama xml xorg xpm xrandr xulrunner xv xvid zlib" ALSA_CARDS="hda-intel" 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="fuji" ELIBC="glibc" INPUT_DEVICES="evdev keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en en_US" QEMU_SOFTMMU_TARGETS="arm i386 mipsel" QEMU_USER_TARGETS="arm mipsel i386" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="fglrx radeon fbdev radeonhd vesa" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LANG, LC_ALL, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Created attachment 216008 [details] /var/log/portage/cross-arm-softfloat-linux-gnu-info.log
Created attachment 216009 [details] /var/log/portage/cross-arm-softfloat-linux-gnu-gcc-stage2.log
The package versions selected by "crossdev -S -t arm-softfloat-linux-gnu" are listed below. These are the *stable* versions (selected by -S above) cross-arm-softfloat-linux-gnu/binutils-2.18-r3 cross-arm-softfloat-linux-gnu/linux-headers-2.6.27-r2 cross-arm-softfloat-linux-gnu/glibc-2.9_p20081201-r2 cross-arm-softfloat-linux-gnu/gcc-4.3.4
patrick: you need to start wrangling these bugs correctly. bugs that say "crossdev" are rarely a bug in "crossdev". Jer knows what's going on. you also need to fix summaries instead of simply reassigning bugs.
I tried running this inside a qemu user chroot into the latest armv4l-unknown-linux-gnu stage3 file also. chroot:# crossdev --g 4.3.4 --k 2.6.27-r2 --b 2.18-r3 --l 2.9_p20081201-r2 -t armv4l-softfloat-linux-gnu ------------------------------------------------------------------------------------------------------------------ * Host Portage ARCH: arm * Target Portage ARCH: arm * Target System: armv4l-softfloat-linux-gnu * Stage: 4 (C/C++ compiler) * binutils: binutils-2.18-r3 * gcc: gcc-4.3.4 * headers: linux-headers-2.6.27-r2 * libc: glibc-2.9_p20081201-r2 * PORTDIR_OVERLAY: /usr/local/portage * PORT_LOGDIR: /var/log/portage * PKGDIR: /home/pkgs/cross/armv4l-softfloat-linux-gnu * PORTAGE_TMPDIR: /var/tmp/cross/armv4l-softfloat-linux-gnu _ - ~ - _ - ~ - _ - ~ - _ - ~ - _ - ~ - _ - ~ - _ - ~ - _ - ~ - _ - ~ - _ - * Forcing the latest versions of {binutils,gcc}-config/gnuconfig ... [ ok ] * Log: /var/log/portage/cross-armv4l-softfloat-linux-gnu-binutils.log * Emerging cross-binutils ... [ ok ] * Log: /var/log/portage/cross-armv4l-softfloat-linux-gnu-linux-headers-quick.log * Emerging cross-linux-headers-quick ... [ ok ] * Log: /var/log/portage/cross-armv4l-softfloat-linux-gnu-glibc-headers.log * Emerging cross-glibc-headers ... [ ok ] * Log: /var/log/portage/cross-armv4l-softfloat-linux-gnu-gcc-stage1.log * Emerging cross-gcc-stage1 ... [ ok ] * Log: /var/log/portage/cross-armv4l-softfloat-linux-gnu-linux-headers.log * Emerging cross-linux-headers ... [ ok ] * Log: /var/log/portage/cross-armv4l-softfloat-linux-gnu-glibc.log * Emerging cross-glibc ... [ ok ] * Log: /var/log/portage/cross-armv4l-softfloat-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-armv4l-softfloat-linux-gnu-info.log * /var/log/portage/cross-armv4l-softfloat-linux-gnu-gcc-stage2.log chroot:# emerge --info Portage 2.1.6.13 (default/linux/arm/10.0, gcc-4.3.4, glibc-2.9_p20081201-r2, 2.6.32-gentoo-Phantom-G15 armv5tel) ================================================================= System uname: Linux-2.6.32-gentoo-Phantom-G15-armv5tel-with-gentoo-1.12.13 Timestamp of tree: Wed, 06 Jan 2010 07:00:01 +0000 app-shells/bash: 4.0_p28 dev-lang/python: 2.6.4 sys-apps/baselayout: 1.12.13 sys-apps/sandbox: 1.6-r2 sys-devel/autoconf: 2.63-r1 sys-devel/automake: 1.10.2 sys-devel/binutils: 2.18-r3 sys-devel/gcc-config: 1.4.1 sys-devel/libtool: 2.2.6a virtual/os-headers: 2.6.27-r2 ACCEPT_KEYWORDS="arm" CBUILD="armv4l-unknown-linux-gnu" CFLAGS="-Os -march=armv4 -pipe" CHOST="armv4l-unknown-linux-gnu" CONFIG_PROTECT="/etc /usr/share/X11/xkb" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c /etc/udev/rules.d" CXXFLAGS="-Os -march=armv4 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="distlocks fixpackages parallel-fetch protect-owned sandbox sfperms strict unmerge-orphans userfetch" GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/linux/distributions/gentoo" LDFLAGS="-Wl,-O1" LINGUAS="en en_US" MAKEOPTS="-j5" PKGDIR="/home/pkgs" PORTAGE_CONFIGROOT="/" 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://rsync.gentoo.org/gentoo-portage" USE="acl arm berkdb bzip2 cli cracklib crypt cups cxx gdbm gpm iconv ipv6 modules ncurses nptl nptlonly pam pcre perl pppd python readline reflection session spl ssl sysfs tcpd unicode xorg zlib" 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" ELIBC="glibc" INPUT_DEVICES="evdev keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en en_US" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="fbdev glint mach64 mga nv r128 radeon savage sis tdfx trident voodoo" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LANG, LC_ALL, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Created attachment 216052 [details] /var/log/portage/cross-armv4l-softfloat-linux-gnu-gcc-stage2.log
Created attachment 216054 [details] /var/log/portage/cross-armv4l-softfloat-linux-gnu-info.log
Created attachment 216119 [details, diff] patch to get cross-armv4l-softfloat-gnu-gcc to compile This patch is probably wrong and I have no idea what effects it may have, but it allows the compile to finish. At least it identifies the problem area in the gcc source code -> gcc/libgcc2.c Apparently arm has an assembly version of these functions and thats what causes the multiple definition errors.
Created attachment 216365 [details, diff] Fixing the above problem exposes another problem fixed by this patch here I found this patch on a mailing list. I didn't write it but it works.
Created attachment 216366 [details] Updated ebuild to apply the patches for armv4l-softfloat-*
Created attachment 216367 [details] described what I did
Comment on attachment 216365 [details, diff] Fixing the above problem exposes another problem fixed by this patch here I found the code for this patch here: http://gcc.gnu.org/bugzilla/attachment.cgi?id=19374&action=view
Comment on attachment 216119 [details, diff] patch to get cross-armv4l-softfloat-gnu-gcc to compile I wrote this patch myself
we've moved onto much newer versions for stable now