Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 351200 - cross-x86_64-w64-mingw32/gcc-4.5.2 - checking for ld that supports -Wl,--gc-sections... configure: error: Link tests are not allowed after GCC_NO_EXECUTABLES.
Summary: cross-x86_64-w64-mingw32/gcc-4.5.2 - checking for ld that supports -Wl,--gc-s...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Development (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Gentoo Toolchain Maintainers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-01-09 11:56 UTC by Aleksey Sidorov
Modified: 2011-07-18 18:24 UTC (History)
3 users (show)

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


Attachments
emerge --info (emerge --info,15.84 KB, text/plain)
2011-04-06 13:33 UTC, Cesko Voeten
Details
build log (build.log.gz,58.95 KB, application/x-gzip)
2011-04-06 13:34 UTC, Cesko Voeten
Details
config.log of all subdirs in build/ folder (config.logs.tar.gz,141.89 KB, application/x-gzip)
2011-04-06 13:35 UTC, Cesko Voeten
Details
cross-x86_64-w64-mingw32-gcc-stage2.log.gz (cross-x86_64-w64-mingw32-gcc-stage2.log.gz,45.48 KB, application/gzip)
2011-06-07 01:33 UTC, Nathan Phillip Brink (binki) (RETIRED)
Details
gcc-4.5.2-config.log (gcc-4.5.2-config.log,40.60 KB, text/plain)
2011-06-26 17:33 UTC, Nathan Phillip Brink (binki) (RETIRED)
Details
cross-x86_64-w64-mingw32-gcc-stage2.log.gz (cross-x86_64-w64-mingw32-gcc-stage2.log.gz,45.50 KB, application/octet-stream)
2011-07-14 00:37 UTC, Nathan Phillip Brink (binki) (RETIRED)
Details
cross-x86_64-w64-mingw32-info.log (cross-x86_64-w64-mingw32-info.log,15.57 KB, text/plain)
2011-07-14 01:39 UTC, Nathan Phillip Brink (binki) (RETIRED)
Details
work/build/x86_64-w64-mingw32/libstdc++-v3/config.log (config.log,264.40 KB, text/plain)
2011-07-14 01:43 UTC, Nathan Phillip Brink (binki) (RETIRED)
Details
work/build/config.log (config.log,40.60 KB, text/plain)
2011-07-14 01:44 UTC, Nathan Phillip Brink (binki) (RETIRED)
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Aleksey Sidorov 2011-01-09 11:56:15 UTC
cross-x86_64-w64-mingw32/gcc-4.4.5  USE="fortran* graphite* (multilib) nls nptl openmp* (-altivec) -bootstrap -build -doc (-fixed-point) -gcj -gtk -hardened -libffi -mudflap -multislot (-n32) (-n64) -nocxx* -nopie -nossp -objc -objc++ -objc-gc -test -vanilla" 0 kB [1]

fails on

checking for ld version... 22100
checking for ld that supports -Wl,--gc-sections... configure: error: Link tests are not allowed after GCC_NO_EXECUTABLES.
make[1]: *** [configure-target-libstdc++-v3] Ошибка 1
make[1]: Выход из каталога `/var/tmp/portage/cross-x86_64-w64-mingw32/gcc-4.4.5/work/build'
make: *** [all] Ошибка 2
emake failed
 * ERROR: cross-x86_64-w64-mingw32/gcc-4.4.5 failed:
 *   emake failed with all
 * 
 * Call stack:
 *     ebuild.sh, line   56:  Called src_compile
 *   environment, line 5026:  Called toolchain_src_compile
 *   environment, line 5621:  Called gcc_src_compile
 *   environment, line 3176:  Called gcc_do_make
 *   environment, line 2963:  Called die
 * The specific snippet of code:
 *       emake LDFLAGS="${LDFLAGS}" STAGE1_CFLAGS="${STAGE1_CFLAGS}" LIBPATH="${LIBPATH}" BOOT_CFLAGS="${BOOT_CFLAGS}" ${GCC_MAKE_TARGET} || die "emake failed with ${GCC_MAKE_TARGET}";
 * 
 * If you need support, post the output of 'emerge --info =cross-x86_64-w64-mingw32/gcc-4.4.5',
 * the complete build log and the output of 'emerge -pqv =cross-x86_64-w64-mingw32/gcc-4.4.5'.
 * This ebuild is from an overlay named 'x11': '/var/lib/layman/x11/'
 * The complete build log is located at '/var/tmp/portage/cross-x86_64-w64-mingw32/gcc-4.4.5/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/cross-x86_64-w64-mingw32/gcc-4.4.5/temp/environment'.
 * S: '/var/tmp/portage/cross-x86_64-w64-mingw32/gcc-4.4.5/work/build'


emerge --info
Portage 2.2.0_alpha14 (default/linux/amd64/10.0/desktop/kde, gcc-4.5.2, glibc-2.12.2-r0, 2.6.37-gentoo x86_64)
=================================================================
System uname: Linux-2.6.37-gentoo-x86_64-AMD_Phenom-tm-_II_X6_1090T_Processor-with-gentoo-2.0.1
Timestamp of tree: Sun, 09 Jan 2011 09:00:01 +0000
ccache version 3.1.3 [enabled]
app-shells/bash:     4.1_p9
dev-java/java-config: 2.1.11-r3
dev-lang/python:     2.6.5-r3, 2.7.1, 3.1.3
dev-util/ccache:     3.1.3
dev-util/cmake:      2.8.3-r1
sys-apps/baselayout: 2.0.1-r1
sys-apps/openrc:     0.6.8
sys-apps/sandbox:    2.4
sys-devel/autoconf:  2.13, 2.68
sys-devel/automake:  1.9.6-r3, 1.10.3, 1.11.1
sys-devel/binutils:  2.21
sys-devel/gcc:       4.5.2
sys-devel/gcc-config: 1.4.1
sys-devel/libtool:   2.4-r1
sys-devel/make:      3.82
virtual/os-headers:  2.6.36.1 (sys-kernel/linux-headers)
Repositories: gentoo x11 qting-edge kde qutim benf qt-symbian-overlay rion local
ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="*"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -pipe -march=native"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /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/sandbox.d /etc/terminfo"
CXXFLAGS="-O2 -pipe -march=native"
DISTDIR="/usr/portage/distfiles"
FEATURES="assume-digests binpkg-logs ccache distlocks fixlafiles fixpackages metadata-transfer news parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch"
GENTOO_MIRRORS="http://mirror.yandex.ru/gentoo-distfiles/ ftp://mirror.yandex.ru/gentoo-distfiles/"
LANG="ru_RU.UTF-8"                                                                                                                                    
LC_ALL=""                                                                                                                                             
LDFLAGS="-Wl,-O1 -Wl,--as-needed"                                                                                                                     
LINGUAS="ru"                                                                                                                                          
MAKEOPTS="-j9"                                                                                                                                        
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"                                                                                                                             
PORTDIR="/usr/portage"                                                                                                                                
PORTDIR_OVERLAY="/var/lib/layman/x11 /var/lib/layman/qting-edge /var/lib/layman/kde /var/lib/layman/qutim /var/lib/layman/benf /var/lib/layman/qt-symbian-overlay /var/lib/layman/rion /home/sauron/develop/overlay"                                                                                        
SYNC="rsync://rsync.gentoo.org/gentoo-portage"                                                                                                        
USE="3dnow X a52 aac acl acpi alsa amd64 avahi bash-completion berkdb branding bzip2 cairo cdr cli consolekit cracklib crypt cups cxx dbus dri dts dvd dvdr egl emboss encode exif fam ffmpeg firefox flac fontconfig fortran gdbm gdu gif git gnutls gphoto2 gpm graphite iconv jpeg kde kipi kqemu kvm lame lastfm lcms libnotify mad mikmod mmx mng modules mp3 mp4 mpeg mudflap multilib musicbrainz ncurses networkmanager nls nptl nptlonly ogg openexr opengl openmp pam pango pch pcre pdf perl png policykit ppds pppd private-headers pulseaudio python qt3support qt4 raw readline samba sdl semantic-desktop session spell sse sse2 ssl startup-notification subversion svg sysfs taglib tcpd theora threads tiff truetype udev unicode usb v4l vorbis wavepack x264 xcb xml xorg xulrunner xv xvid zeroconf zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" 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 cgi cgid 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="canon" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" INPUT_DEVICES="mouse keyboard evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="ru" PHP_TARGETS="php5-3" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="v4l radeon r600" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account" 
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS

Reproducible: Always
Comment 1 SpanKY gentoo-dev 2011-01-18 20:52:56 UTC
you need to post the full build log as an attachment

also, post the config.log's from the build dirs
Comment 2 Cesko Voeten 2011-04-06 13:33:16 UTC
Hi, I do hope I'm not breaking any protocol here, but I'm suffering from the same issue on a fully up-to-date gentoo ~amd64 system.

checking for ld version... 22100
checking for ld that supports -Wl,--gc-sections... configure: error: Link tests are not allowed after GCC_NO_EXECUTABLES.
make[1]: *** [configure-target-libstdc++-v3] Fout 1
make[1]: Map '/var/tmp/portage/cross-x86_64-w64-mingw32/gcc-4.5.2/work/build' wordt verlaten
make: *** [all] Fout 2
emake failed
 * ERROR: cross-x86_64-w64-mingw32/gcc-4.5.2 failed (compile phase):
 *   emake failed with all
 * 
 * Call stack:
 *     ebuild.sh, line   56:  Called src_compile
 *   environment, line 4878:  Called toolchain_src_compile
 *   environment, line 5473:  Called gcc_src_compile
 *   environment, line 3052:  Called gcc_do_make
 *   environment, line 2834:  Called die
 * The specific snippet of code:
 *       emake LDFLAGS="${LDFLAGS}" STAGE1_CFLAGS="${STAGE1_CFLAGS}" LIBPATH="${LIBPATH}" BOOT_CFLAGS="${BOOT_CFLAGS}" ${GCC_MAKE_TARGET} || die "emake failed with ${GCC_MAKE_TARGET}";
 * 
 * If you need support, post the output of 'emerge --info =cross-x86_64-w64-mingw32/gcc-4.5.2',
 * the complete build log and the output of 'emerge -pqv =cross-x86_64-w64-mingw32/gcc-4.5.2'.
 * This ebuild is from an overlay named 'vmware': '/var/lib/layman/vmware/' <--- it's actually from crossdev which for some reason put it in this overlay
 * The complete build log is located at '/var/tmp/portage/cross-x86_64-w64-mingw32/gcc-4.5.2/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/cross-x86_64-w64-mingw32/gcc-4.5.2/temp/environment'.
 * S: '/var/tmp/portage/cross-x86_64-w64-mingw32/gcc-4.5.2/work/build'

----

$ emerge -pqv =cross-x86_64-w64-mingw32/gcc-4.5.2
[ebuild   R   ] cross-x86_64-w64-mingw32/gcc-4.5.2  USE="graphite lto (multilib) nls nptl (-altivec) -bootstrap -build -doc (-fixed-point) -fortran -gcj -gtk -hardened -libffi -mudflap -multislot (-n32) (-n64) -nocxx* -nopie -nossp -objc -objc++ -objc-gc -openmp -test -vanilla"

----

I'm also adding the files you requested in addition to emerge --info which was too big to post.
Comment 3 Cesko Voeten 2011-04-06 13:33:44 UTC
Created attachment 268705 [details]
emerge --info
Comment 4 Cesko Voeten 2011-04-06 13:34:18 UTC
Created attachment 268707 [details]
build log
Comment 5 Cesko Voeten 2011-04-06 13:35:32 UTC
Created attachment 268709 [details]
config.log of all subdirs in build/ folder

I've kept the original directory structure intact. I think.
Comment 6 Ben Peddell 2011-04-22 07:44:07 UTC
This is a duplicate of bug 338501.

Please try using =sys-devel/crossdev-99999999 (unmasked with the ** keyword), or disabling multilib using the 
--genv EXTRA_ECONF=--disable-multilib
arguments to crossdev.
Comment 7 Nathan Phillip Brink (binki) (RETIRED) gentoo-dev 2011-06-07 01:33:05 UTC
(In reply to comment #6)
> This is a duplicate of bug 338501.
> 
> Please try using =sys-devel/crossdev-99999999 (unmasked with the ** keyword),
> or disabling multilib using the 
> --genv EXTRA_ECONF=--disable-multilib
> arguments to crossdev.

I don't think so. I got this exact GCC_NO_EXECUTABLES error myself and --disable-multilib is definitely in ./configure's arguments (I upgraded to crossdev-99999999). I'll attach my build.log...
Comment 8 Nathan Phillip Brink (binki) (RETIRED) gentoo-dev 2011-06-07 01:33:59 UTC
Created attachment 276081 [details]
cross-x86_64-w64-mingw32-gcc-stage2.log.gz
Comment 9 SpanKY gentoo-dev 2011-06-17 06:07:30 UTC
Cesko: you're not using latest crossdev.  your logs are a dupe of bug 338501.

Aleksey/Nathan: you'll need to post config.log files like Cesko did.
Comment 10 Nathan Phillip Brink (binki) (RETIRED) gentoo-dev 2011-06-26 17:33:12 UTC
Created attachment 278253 [details]
gcc-4.5.2-config.log

Sorry for the delay, here the config.log is. I'm going to also replace my build.log since this config.log is from a more recent attempt at compiling gcc for x86_64-w64-mingw32.
Comment 11 Nathan Phillip Brink (binki) (RETIRED) gentoo-dev 2011-06-26 17:34:47 UTC
Oops, in adding config.log I tried to reopen the bug and ended up assigning it to myself.
Comment 12 SpanKY gentoo-dev 2011-07-13 03:30:24 UTC
Comment on attachment 278253 [details]
gcc-4.5.2-config.log

i need all the files, not just the one
Comment 13 Nathan Phillip Brink (binki) (RETIRED) gentoo-dev 2011-07-14 00:37:02 UTC
Created attachment 280031 [details]
cross-x86_64-w64-mingw32-gcc-stage2.log.gz
Comment 14 Nathan Phillip Brink (binki) (RETIRED) gentoo-dev 2011-07-14 01:39:32 UTC
Created attachment 280033 [details]
cross-x86_64-w64-mingw32-info.log
Comment 15 Nathan Phillip Brink (binki) (RETIRED) gentoo-dev 2011-07-14 01:43:44 UTC
Created attachment 280035 [details]
work/build/x86_64-w64-mingw32/libstdc++-v3/config.log
Comment 16 Nathan Phillip Brink (binki) (RETIRED) gentoo-dev 2011-07-14 01:44:46 UTC
Created attachment 280037 [details]
work/build/config.log
Comment 17 Nathan Phillip Brink (binki) (RETIRED) gentoo-dev 2011-07-14 01:47:01 UTC
(In reply to comment #12)
> Comment on attachment 278253 [details]
> gcc-4.5.2-config.log
> 
> i need all the files, not just the one

I hope I've managed to get more of them this time ;-).

Thanks for troubling yourself with this bug!
Comment 18 SpanKY gentoo-dev 2011-07-14 04:18:06 UTC
op's report most likely is a dupe as his output shows "(multilib)" in the USE flags.  newer versions of crossdev address this.

i just tried on my system and `crossdev x86_64-w64-mingw32` worked fine.
$ qlist -I -v x86_64-w64-mingw32
cross-x86_64-w64-mingw32/binutils-2.21.1
cross-x86_64-w64-mingw32/gcc-4.5.2
cross-x86_64-w64-mingw32/mingw64-runtime-20110523

so in Nathan's logs, we see:
configure:3840: /var/tmp/portage/cross-x86_64-w64-mingw32/gcc-4.5.2/work/build/./gcc/xgcc -B/var/tmp/portage/cross-x86_64-w64-mingw32/gcc-4.5.2/work/build/./gcc/ -L/usr/x86_64-w64-mingw32/lib -L/usr/mingw/lib -isystem /usr/x86_64-w64-mingw32/include -isystem /usr/mingw/include -B/usr/x86_64-w64-mingw32/bin/ -B/usr/x86_64-w64-mingw32/lib/ -isystem /usr/x86_64-w64-mingw32/include -isystem /usr/x86_64-w64-mingw32/sys-include    -o conftest -g -O2 -pipe   conftest.c  >&5
/usr/x86_64-w64-mingw32/lib/crt2.o: In function `pre_cpp_init':
/var/tmp/portage/cross-x86_64-w64-mingw32/mingw64-runtime-20101003/work/mingw-w64-v1.0-20101003/mingw-w64-crt/crt/crtexe.c:153: undefined reference to `__getmainargs'
........

obviously this shouldnt have failed.  but this indicates a problem with the mingw64-runtime that you have installed.  you could try linking a simple app:
$ echo 'main(){}' > test.c
$ x86_64-w64-mingw32-gcc test.c

if this fails, i suggest you `crossdev -C x86_64-w64-mingw32 && crossdev x86_64-w64-mingw32` to make sure you're using the latest settings from crossdev.  simply upgrading crossdev and restarting the middle of a broken build isnt enough for crossdev to install proper settings.
Comment 19 Nathan Phillip Brink (binki) (RETIRED) gentoo-dev 2011-07-15 13:33:45 UTC
(In reply to comment #18)
> obviously this shouldnt have failed.  but this indicates a problem with the
> mingw64-runtime that you have installed.  you could try linking a simple app:
> $ echo 'main(){}' > test.c
> $ x86_64-w64-mingw32-gcc test.c

Yes, this had been failing very badly and didn't stop until I removed the toolchain overlay and started crossdev over:

> if this fails, i suggest you `crossdev -C x86_64-w64-mingw32 && crossdev
> x86_64-w64-mingw32` to make sure you're using the latest settings from
> crossdev.  simply upgrading crossdev and restarting the middle of a broken
> build isnt enough for crossdev to install proper settings.

I finally realized that all of this was due to crossdev pointing to toolchain overlay's gcc/binutils. When doing crossdev -C and crossdev <target>, not even gcc-stage1 would get far just because the toolchain overlay's binutils package was used.

So it looks like my fault to have the toolchain overlay installed. Removing it and removing crossdev's gcc/gdb/binutils symlinks fixed the build and has resulted in a stage2 which appears to work (although I have no 64-bit mingw32 machines around to play with ;-)).

Thanks again for taking so much time to look at my logs! I assume that since this works for the gentoo-x86 packages, I should mark fixed.
Comment 20 SpanKY gentoo-dev 2011-07-18 18:24:51 UTC
only the main tree (gentoo-x86) is generally supported.  the toolchain overlay is for people who need specific things and not as a general "i should use everything in here".