dev-libs/glib-2.6.5 fails to compile. After googling around I happened upon http://www.linuxbios.org/pipermail/linuxbios/2004-February/006609.html which seems to suggest that this is an 64bit issue. dev-libs/glib-2.6.5 failed to build during the make giving "Error: Incorrect register `%rdx' used with `l' suffix" Reproducible: Always Steps to Reproduce: 1. emerge --sync 2. emerge =glib-2.6.5 Actual Results: >>> Unpacking source... >>> Unpacking glib-2.6.5.tar.bz2 to /var/tmp/portage/glib-2.6.5/work >>> Source unpacked. * Removing useless C++ checks ... [ ok ] * econf: updating glib-2.6.5/config.guess with /usr/share/gnuconfig/config.guess * econf: updating glib-2.6.5/config.sub with /usr/share/gnuconfig/config.sub ./configure --prefix=/usr --host=i686-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --libdir=/usr/lib64 --build=i686-pc-linux-gnu --with-threads=posix --disable-static --enable-gtk-doc checking for a BSD-compatible install... /bin/install -c checking whether build environment is sane... yes checking for gawk... gawk checking whether make sets $(MAKE)... yes . . . . . . gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -DG_LOG_DOMAIN=\"GLib\" -DG_DISABLE_CAST_CHECKS -DG_DISABLE_DEPRECATED -DGLIB_COMPILATION -pthread -Os -march=k8 -pipe -Wall -MT gatomic.lo -MD -MP -MF .deps/gatomic.Tpo -c gatomic.c -fPIC -DPIC -o .libs/gatomic.o {standard input}: Assembler messages: {standard input}:57: Error: Incorrect register `%rdx' used with `l' suffix make[4]: *** [gatomic.lo] Error 1 make[4]: *** Waiting for unfinished jobs.... gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -DG_LOG_DOMAIN=\"GLib\" -DG_DISABLE_CAST_CHECKS -DG_DISABLE_DEPRECATED -DGLIB_COMPILATION -pthread -Os -march=k8 -pipe -Wall -MT gbacktrace.lo -MD -MP -MF .deps/gbacktrace.Tpo -c gbacktrace.c -fPIC -DPIC -o .libs/gbacktrace.o make[4]: Leaving directory `/var/tmp/portage/glib-2.6.5/work/glib-2.6.5/glib' make[3]: *** [all-recursive] Error 1 make[3]: Leaving directory `/var/tmp/portage/glib-2.6.5/work/glib-2.6.5/glib' make[2]: *** [all] Error 2 make[2]: Leaving directory `/var/tmp/portage/glib-2.6.5/work/glib-2.6.5/glib' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/tmp/portage/glib-2.6.5/work/glib-2.6.5' make: *** [all] Error 2 !!! ERROR: dev-libs/glib-2.6.5 failed. !!! Function src_compile, Line 51, Exitcode 2 !!! (no error message) !!! If you need support, post the topmost build error, NOT this status message. Expected Results: Compiled and allowed GNOME 2.10.2 to be installed. Portage 2.0.51.22-r2 (default-linux/amd64/2005.0, gcc-3.4.3, glibc-2.3.5-r1, 2.6.12-gentoo-r4 x86_64) ================================================================= System uname: 2.6.12-gentoo-r4 x86_64 AMD Athlon(tm) 64 Processor 3000+ Gentoo Base System version 1.6.13 dev-lang/python: 2.3.5-r2 sys-apps/sandbox: 1.2.12 sys-devel/autoconf: 2.13, 2.59-r6 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6 sys-devel/binutils: 2.15.92.0.2-r10 sys-devel/libtool: 1.5.18-r1 virtual/os-headers: 2.6.11-r2 ACCEPT_KEYWORDS="amd64" AUTOCLEAN="yes" CBUILD="i686-pc-linux-gnu" CFLAGS="-Os -march=k8 -pipe" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.4/env /usr/kde/3.4/share/config /usr/kde/3.4/shutdown /usr/kde/3/share/config /usr/lib/X11/xkb /usr/lib64/mozilla/defaults/pref /usr/share/config /usr/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/ /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-Os -march=k8 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoconfig candy distlocks sandbox sfperms strict" GENTOO_MIRRORS="http://ftp.belnet.be/mirror/rsync.gentoo.org/gentoo/ http://gentoo.blueyonder.co.uk http://mir.zyrianes.net/gentoo/ http://ftp.snt.utwente.nl/pub/os/linux/gentoo" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage /usr/local/bmg-main" SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage" USE="amd64 X aalib acpi alsa atlas audiofile avi bash-completion berkdb blas bonobo bzip2 bzlib cairo caps cdr cjk crypt cups curl dga dnd doc dvd dvdr eds emacs encode faac faad fbcon fftw firefox flac foomaticdb fortran gcj gdbm gif ginac gmp gnome gnutls graphviz gstreamer gtk gtk2 gtkhtml hal hdf hdf5 howl imagemagick imlib java jikes jpeg kerberos krb4 lapack lcms ldap libgda libwww mad maildir mailwrapper mpeg ncurses network nls nptl objc ogg oggvorbis opengl pam pcre pdflib perl plotutils png postgres ppds python qt quicktime readline ruby samba sdl speex spell ssl svg szip tcltk tcpd tetex theora threads tiff truetype unicode usb vorbis wmf xml xml2 xmms xv zlib video_cards_radeon userland_GNU kernel_linux elibc_glibc" Unset: ASFLAGS, CTARGET, LANG, LC_ALL, LDFLAGS, LINGUAS
Created attachment 68775 [details] Full build info
Try again without -Os. That has been known to cause problems on amd64. I haven't heard any recent issues with it, but glib compiles fine usually.
After removing "-Os" from both CFLAGS and CXXFLAGS dev-libs/glib fails with the same error message. I've tried removing all of the flags, so setting C{,XX}FLAGS="", which still results in the same error.
does this still happen with 2.8.4 ( recently stabled ) ?
glib-2.8.4 compiles and works. I assume whatever the problem was is specific to 2.8.5.
i assume you meant 2.6.5 in the last comment, so resolving. ( if not, please re-open )
Created attachment 162595 [details] Build log of dev-libs/glib-2.6.13-r1
Hi, the exact same bug popped up on my amd64 machine (currently installing from scratch). However, this is with dev-libs/glib-2.16.3-r1 (also tried with 2.14.6, same result). Output of emerge --info: Portage 2.1.4.4 (default-linux/amd64/2007.0, gcc-4.1.2, glibc-2.6.1-r0, 2.6.21-xen x86_64) ================================================================= System uname: 2.6.21-xen x86_64 Quad-Core AMD Opteron(tm) Processor 2354 Timestamp of tree: Fri, 08 Aug 2008 22:45:01 +0000 app-shells/bash: 3.2_p17-r1 dev-lang/python: 2.4.4-r13 dev-python/pycrypto: 2.0.1-r6 sys-apps/baselayout: 1.12.11.1 sys-apps/sandbox: 1.2.18.1-r2 sys-devel/autoconf: 2.61-r1 sys-devel/automake: 1.10.1 sys-devel/binutils: 2.18-r1 sys-devel/gcc-config: 1.4.0-r4 sys-devel/libtool: 1.5.24 virtual/os-headers: 2.6.23-r3 ACCEPT_KEYWORDS="amd64" CBUILD="i686-pc-linux-gnu" CFLAGS="-O2 -march=opteron -pipe -mno-tls-direct-seg-refs" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc" CONFIG_PROTECT_MASK="/etc/env.d /etc/gconf /etc/revdep-rebuild /etc/terminfo /etc/udev/rules.d" CXXFLAGS="-O2 -march=opteron -pipe -mno-tls-direct-seg-refs" DISTDIR="/mnt/portage/distfiles" FEATURES="distlocks metadata-transfer parallel-fetch sandbox sfperms strict unmerge-orphans userfetch" GENTOO_MIRRORS=" ftp://ftp.snt.utwente.nl/pub/os/linux/gentoo ftp://ftp.join.uni-muenster.de/pub/linux/distributions/gentoo ftp://ftp.heanet.ie/pub/gentoo ftp://mirror.switch.ch/mirror/gentoo http://mirror.uni-c.dk/pub/gentoo ftp://ftp6.uni-erlangen.de/pub/mirrors/gentoo " LINGUAS="en en_GB en_US" MAKEOPTS="-j10" PKGDIR="/mnt/portage/binpkgs/adm" PORTAGE_RSYNC_EXTRA_OPTS="--timeout=300" 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="/mnt/portage/portage" SYNC="rsync://pluk.pet.vd/gentoo-portage" USE="3dnow 3dnowext X509 acpi amd64 berkdb bzip2 c++ crypt cscope ctype ftp glibc-omitfp hal hpn hvm ipsec ipv6 lm_sensors logrotate maildir memlimit mmap mmx mmxext nagios-dns nagios-ntp nagios-ping nagios-ssh ncurses nfs nls no-htdocs no-old-linux noweb nptl nptlonly pam posix readline rpc rtc screen sensord sftp sftplogging sharedmem sockets sse sse2 ssl subversion sysfs syslog sysvipc tao threads ucs2 unicode vim vim-pager vim-syntax 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 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="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en en_GB en_US" USERLAND="GNU" VIDEO_CARDS="apm ark chips cirrus cyrix dummy fbdev glint i128 i810 mach64 mga neomagic nv r128 radeon rendition s3 s3virge savage siliconmotion sis sisusb tdfx tga trident tseng v4l vesa vga via vmware voodoo" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTDIR_OVERLAY Reproduce: emerge =dev-libs/glib-2.6.13-r1 on amd64 P.S. Created attachment first, it contains the full build log.
I tried compiling glib with the -m32 flag as suggested in the link included in the first comment. This works, but then all other packages I try to build that use glib break. I prefer not to run half of my packages in 32-bit mode on a dual quad-core opteron...
Hi again, I wonder who was the wise man who said: "Some things are best hidden in plain sight". I recalled that my workstation is also amd64 and had no problems whatsoever compiling glib. For my dual quad-core system, I copied the make.conf from the previous (Pentium III) server and updated *almost* everything. I installed my workstation from scratch. The difference between compiling and not compiling is, as also seen in the first emerge --info: CHOST and CBUILD CHOST="i686-pc-linux-gnu" on an AMD64 system is not a good thing. After changing to: CHOST="x86_64-pc-linux-gnu" all worked like a charm. I'm glad Google will spread the word.