Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 566120 - dev-libs/dbus-glib-0.102: fails to build examples on AMD64 with +abi_x86_32 with march=haswell mtune=haswell
Summary: dev-libs/dbus-glib-0.102: fails to build examples on AMD64 with +abi_x86_32 w...
Status: RESOLVED INVALID
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Library (show other bugs)
Hardware: AMD64 Linux
: Normal normal (vote)
Assignee: Freedesktop bugs
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-11-18 13:22 UTC by Konstantin Hartwich
Modified: 2016-02-07 16:14 UTC (History)
0 users

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


Attachments
build.log (build.log,88.57 KB, text/plain)
2015-11-18 13:24 UTC, Konstantin Hartwich
Details
emerge pqv (emerge_pqv,12.92 KB, text/plain)
2015-11-18 13:30 UTC, Konstantin Hartwich
Details
emerge_info (emerge_info,6.46 KB, text/plain)
2015-11-18 13:31 UTC, Konstantin Hartwich
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Konstantin Hartwich 2015-11-18 13:22:24 UTC
Setting up a Haswell-E based systemm from scratch...

using march=haswell mtune=haswell in make.conf

global USE="abi_x86_32" to build all the supported lib32, needed for cinnamon..

emerge of dev-libs/dbus-glib-102.0::gentoo fails permanently

Reproducible: Always

Steps to Reproduce:
1. simple emerge of the dev-libs/dbus-glib-102.0::gentoo as part of the overall dependency graph --> error as seen in results

2. after the emerge has failed: manually reproducable..

cd /var/tmp/portage/dev-libs/dbus-glib-0.102/work/dbus-glib-0.102-abi_x86_32.x86/dbus/examples

/bin/sh ../../libtool --mode=execute ../../dbus/dbus-binding-tool --prefix=some_object --mode=glib-server --output=example-service-glue.h /var/tmp/portage/dev-libs/dbus-glib-0.102/work/dbus-glib-0.102/dbus/examples/example-service.xml

--> same error

3. exchanging the freshly built ../../dbus/dbus-binding-tool stub script with the real program dbus-binding-tool (why is the stub used anyway)

/bin/sh ../../libtool --mode=execute dbus/dbus-binding-tool --prefix=some_object --mode=glib-server --output=example-service-glue.h /var/tmp/portage/dev-libs/dbus-glib-0.102/work/dbus-glib-0.102/dbus/examples/example-service.xml

-> no errors
Actual Results:  
libtool: link: ranlib .libs/libdbus-gtool.a
libtool: link: ( cd ".libs" && rm -f "libdbus-gtool.la" && ln -s "../libdbus-gtool.la" "libdbus-gtool.la" )
/bin/sh ../libtool  --tag=CC   --mode=link x86_64-pc-linux-gnu-gcc -m32  -march=haswell -mtune=haswell -malign-double -O2 -pipe -Wall -Wchar-subscripts -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wcast-align -Wfloat-equal -Wsign-compare -fno-strict-aliasing  -Wl,-O1 -Wl,--as-needed -o dbus-binding-tool dbus-binding-tool-glib.o dbus-glib-tool.o ./libdbus-gtool.la ./libdbus-glib-1.la -ldbus-1  -lgio-2.0 -lgobject-2.0 -lglib-2.0  -lexpat 
/bin/sh ../libtool  --tag=CC   --mode=link x86_64-pc-linux-gnu-gcc -m32  -march=haswell -mtune=haswell -malign-double -O2 -pipe -Wall -Wchar-subscripts -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wcast-align -Wfloat-equal -Wsign-compare -fno-strict-aliasing  -Wl,-O1 -Wl,--as-needed -o dbus-bash-completion-helper dbus-bash-completion-helper.o ./libdbus-gtool.la -lexpat ./libdbus-glib-1.la -ldbus-1  -lgio-2.0 -lgobject-2.0 -lglib-2.0  
libtool: link: x86_64-pc-linux-gnu-gcc -m32 -march=haswell -mtune=haswell -malign-double -O2 -pipe -Wall -Wchar-subscripts -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wcast-align -Wfloat-equal -Wsign-compare -fno-strict-aliasing -Wl,-O1 -Wl,--as-needed -o .libs/dbus-bash-completion-helper dbus-bash-completion-helper.o  ./.libs/libdbus-gtool.a /var/tmp/portage/dev-libs/dbus-glib-0.102/work/dbus-glib-0.102-abi_x86_32.x86/dbus/.libs/libdbus-glib-1.so -lexpat ./.libs/libdbus-glib-1.so -ldbus-1 -lgio-2.0 -lgobject-2.0 -lglib-2.0
libtool: link: x86_64-pc-linux-gnu-gcc -m32 -march=haswell -mtune=haswell -malign-double -O2 -pipe -Wall -Wchar-subscripts -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wcast-align -Wfloat-equal -Wsign-compare -fno-strict-aliasing -Wl,-O1 -Wl,--as-needed -o .libs/dbus-binding-tool dbus-binding-tool-glib.o dbus-glib-tool.o  ./.libs/libdbus-gtool.a /var/tmp/portage/dev-libs/dbus-glib-0.102/work/dbus-glib-0.102-abi_x86_32.x86/dbus/.libs/libdbus-glib-1.so ./.libs/libdbus-glib-1.so -ldbus-1 -lgio-2.0 -lgobject-2.0 -lglib-2.0 -lexpat
make[3]: Leaving directory '/var/tmp/portage/dev-libs/dbus-glib-0.102/work/dbus-glib-0.102-abi_x86_32.x86/dbus'
Making all in examples
make[3]: Entering directory '/var/tmp/portage/dev-libs/dbus-glib-0.102/work/dbus-glib-0.102-abi_x86_32.x86/dbus/examples'
/bin/sh ../../libtool --mode=execute ../../dbus/dbus-binding-tool --prefix=some_object --mode=glib-server --output=example-service-glue.h /var/tmp/portage/dev-libs/dbus-glib-0.102/work/dbus-glib-0.102/dbus/examples/example-service.xml
/bin/sh ../../libtool --mode=execute ../../dbus/dbus-binding-tool --prefix=test_object --mode=glib-server --output=example-signal-emitter-glue.h /var/tmp/portage/dev-libs/dbus-glib-0.102/work/dbus-glib-0.102/dbus/examples/example-signal-emitter.xml
Unable to load "/var/tmp/portage/dev-libs/dbus-glib-0.102/work/dbus-glib-0.102/dbus/examples/example-service.xml": Error in D-BUS description XML, line 1, column 0: no element found

Unable to load "/var/tmp/portage/dev-libs/dbus-glib-0.102/work/dbus-glib-0.102/dbus/examples/example-signal-emitter.xml": Error in D-BUS description XML, line 1, column 0: no element found

Makefile:776: recipe for target 'example-signal-emitter-glue.h' failed
make[3]: *** [example-signal-emitter-glue.h] Error 1
make[3]: *** Waiting for unfinished jobs....


Expected Results:  
sucessfull emerge of dbus-glib-102.0::gentoo including examples

it seems as if the ../../dbus/dbus-binding-tool is not capable to work with the xml files (example-service.xml and example-signal-emitter.xml) while the real program emerged from probably the actual dbus build IS capable to work.

as far as i could see the configuration did not recognize a cross compile, what actually is right. 

So i don't know how to cleanly fix this one..

I thought it to be similar to BUG 346353
https://bugs.gentoo.org/show_bug.cgi?id=346353

but didn't get the descriptions there or what the respective solution in the bug consisted of..

As I am trying to emerge world with no ~amd64 and keywords i'd expect this to be considered major, it is not too much of an exotic configuration.
Comment 1 Konstantin Hartwich 2015-11-18 13:24:06 UTC
Created attachment 417280 [details]
build.log

already fails with abi_x86_32, as far as i can see, 64 isn't built yet
Comment 2 Konstantin Hartwich 2015-11-18 13:30:05 UTC
Created attachment 417282 [details]
emerge pqv

seems as if 32 is not properly propagated

dev-libs/dbus-glib-0.102::gentoo was built with the following:
USE="-debug -doc -static-libs -test" ABI_X86="64 -32 -x32"

though 
ABI_X86="64 32" is global
Comment 3 Konstantin Hartwich 2015-11-18 13:31:21 UTC
Created attachment 417284 [details]
emerge_info
Comment 4 Konstantin Hartwich 2015-11-18 13:34:09 UTC
Portage 2.2.20.1 (python 3.4.3-final-0, default/linux/amd64/13.0/desktop, gcc-4.9.3, glibc-2.21-r1, 4.1.12-gentoo x86_64)
=================================================================
                         System Settings
=================================================================
System uname: Linux-4.1.12-gentoo-x86_64-Intel-R-_Core-TM-_i7-5930K_CPU_@_3.50GHz-with-gentoo-2.2
KiB Mem:    32890536 total,  32538676 free
KiB Swap:   33554428 total,  33554428 free
Timestamp of repository gentoo: Tue, 17 Nov 2015 17:00:01 +0000
sh bash 4.3_p39
ld GNU ld (Gentoo 2.25.1 p1.1) 2.25.1
app-shells/bash:          4.3_p39::gentoo
dev-java/java-config:     2.2.0::gentoo
dev-lang/perl:            5.20.2::gentoo
dev-lang/python:          2.7.10::gentoo, 3.4.3::gentoo
dev-util/cmake:           3.3.1-r1::gentoo
dev-util/pkgconfig:       0.28-r2::gentoo
sys-apps/baselayout:      2.2::gentoo
sys-apps/openrc:          0.17::gentoo
sys-apps/sandbox:         2.6-r1::gentoo
sys-devel/autoconf:       2.13::gentoo, 2.69::gentoo
sys-devel/automake:       1.13.4::gentoo, 1.14.1::gentoo, 1.15::gentoo
sys-devel/binutils:       2.25.1-r1::gentoo
sys-devel/gcc:            4.9.3::gentoo
sys-devel/gcc-config:     1.7.3::gentoo
sys-devel/libtool:        2.4.6::gentoo
sys-devel/make:           4.1-r1::gentoo
sys-kernel/linux-headers: 3.18::gentoo (virtual/os-headers)
sys-libs/glibc:           2.21-r1::gentoo
Repositories:

gentoo
    location: /usr/portage
    sync-type: rsync
    sync-uri: rsync://rsync.gentoo.org/gentoo-portage
    priority: -1000

ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="*"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=haswell -mtune=haswell -malign-double -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-march=haswell -mtune=haswell -malign-double -O2 -pipe"
DISTDIR="/usr/portage/distfiles"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="ftp://sunsite.informatik.rwth-aachen.de/pub/Linux/gentoo http://linux.rz.ruhr-uni-bochum.de/download/gentoo-mirror/ ftp://linux.rz.ruhr-uni-bochum.de/gentoo-mirror/ http://ftp.uni-erlangen.de/pub/mirrors/gentoo ftp://ftp.uni-erlangen.de/pub/mirrors/gentoo ftp://ftp.join.uni-muenster.de/pub/linux/distributions/gentoo ftp://ftp.wh2.tu-dresden.de/pub/mirrors/gentoo ftp://ftp.join.uni-muenster.de/pub/linux/distributions/gentoo http://mirrors.sec.informatik.tu-darmstadt.de/gentoo/ http://ftp-stud.fht-esslingen.de/pub/Mirrors/gentoo/ ftp://ftp-stud.fht-esslingen.de/pub/Mirrors/gentoo/ http://gentoo.mneisen.org/ "
LANG="en_US.utf8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j12"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
USE="X a52 aac acl acpi alsa amd64 apache2 bash-completion berkdb bindist bluetooth branding bzip2 cairo cdda cddb cdr cgi cli consolekit cracklib crypt css cups curl curlwrappers cxx dbus dri dts dvd dvdr emboss encode exif expat fam ffmpeg fftw firefox flac fortran ftp gd gdbm gif gimp git glamor glut gmp gnuplot gnutls gpm gps gstreamer gtk gzip iconv icu idn imagemagick imap imlib ipv6 java javascript jbig jingle joystick jpeg kerberos lame lcms ldap libcaca libnotify lua lzma lzo mad mime mmap mmx mmxext mng modules mono mp3 mp4 mpeg multilib nas ncurses networkmanager nls nptl ogg opengl openmp osc oss pam pango pcre pdf perl php plotutils png policykit ppds pulseaudio python raw rdesktop readline samba sasl sdl seccomp session smp snmp soap sockets sound spell sqlite sse sse2 ssl startup-notification subversion svg tcpd tiff truetype udev udisks unicode upower usb vaapi vhosts vnc vorbis webkit wifi wxwidgets x264 xattr xcb xcomposit xft xine xinerama xml xmpp xscreensaver xv xvid zlib" ABI_X86="64 32" 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" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd 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" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump author" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="mmx mmxext sse sse2" 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 ublox ubx" GRUB_PLATFORMS="efi-64" INPUT_DEVICES="evdev synaptics" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="en" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-5" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_4" RUBY_TARGETS="ruby20 ruby21" USERLAND="GNU" VIDEO_CARDS="nvidia" XFCE_PLUGINS="brightness clock trash" 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:  CC, CPPFLAGS, CTARGET, CXX, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON

=================================================================
                        Package Settings
=================================================================

dev-libs/dbus-glib-0.102::gentoo was built with the following:
USE="-debug -doc -static-libs -test" ABI_X86="64 -32 -x32"
Comment 5 Konstantin Hartwich 2015-11-23 20:09:44 UTC
It seems that the generated dbus-binding-tool in 

/var/tmp/portage/dev-libs/dbus-glib-0.102/work/dbus-glib-0.102-abi_x86_32.x86/dbus/dbus-binding-tool

that is beeing executed during the build process is *unable* to read *any* xml file or what so ever file. 

probably due to broken linkage with expat or some other library? I am not able to trace it down further here.
Comment 6 Konstantin Hartwich 2015-11-23 20:13:19 UTC
the real executable that is used here is actually in

/var/tmp/portage/dev-libs/dbus-glib-0.102/work/dbus-glib-0.102-abi_x86_32.x86/dbus/.libs/dbus-binding-tool
Comment 7 Konstantin Hartwich 2016-02-07 16:14:11 UTC
it just so happened that I needed to reinstall the gentoo on the same system but a different harddisk, reusing config files, but this time left out the -malign-double, and what should I say? It works.

I stumbled upon the following link, confirming my suspicion.

http://www.gentoo-wiki.info/CFLAGS_matrix

looks like it is the cause for it.

Should consider it closed.