Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 130735 - orbit-0.5.17-r1 breaks with LDFLAGS "-Wl,--as-needed"
Summary: orbit-0.5.17-r1 breaks with LDFLAGS "-Wl,--as-needed"
Status: RESOLVED WONTFIX
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Library (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Gentoo Linux Gnome Desktop Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: as-needed
  Show dependency tree
 
Reported: 2006-04-21 07:44 UTC by Charles Hemingway
Modified: 2006-11-28 22:22 UTC (History)
6 users (show)

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


Attachments
orbit-0.5.17 --as-needed fix (orbit-0.5.17-as-needed.patch,4.60 KB, patch)
2006-05-19 16:13 UTC, Thomas S. Howard
Details | Diff
ebuild patch, orbit-0.5.17-r1, for --as-needed (orbit-0.5.17-r1.ebuild.patch,764 bytes, patch)
2006-05-19 16:14 UTC, Thomas S. Howard
Details | Diff
orbit-0.5.17 --as-needed fix, for use w/ eautomake (orbit-0.5.17-as-needed.patch,1.86 KB, patch)
2006-05-27 18:23 UTC, Thomas S. Howard
Details | Diff
ebuild patch, orbit-0.5.17-r1, for --as-needed, uses eautomake (orbit-0.5.17-r1.ebuild.patch,1.06 KB, patch)
2006-05-27 18:40 UTC, Thomas S. Howard
Details | Diff
orbit-config.log (config.log,42.19 KB, text/plain)
2006-08-09 16:24 UTC, Lars Wendler (Polynomial-C) (RETIRED)
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Charles Hemingway 2006-04-21 07:44:05 UTC
depends on 129413 (--as-needed bug squashing)
creating libORBitCosNaming.la
(cd .libs && rm -f libORBitCosNaming.la && ln -s ../libORBitCosNaming.la libORBitCosNaming.la)
rm -f libname-server.a
ar cru libname-server.a new-name-server.o CosNaming-skels.o
i686-pc-linux-gnu-ranlib libname-server.a
i686-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I../../.. -I. -I../../../src -I../../../src/ORBitutil -I../../../src -I/usr/include/glib-1.2 -I/usr/lib/glib/include    -march=pentium-m -O2 -pipe -c name-client.c
/bin/sh ../../../libtool --mode=link i686-pc-linux-gnu-gcc  -march=pentium-m -O2 -pipe -Wl,-O1,--as-needed -o name-client  name-client.o ../../../src/orb/libORBit.la                             ../../../src/IIOP/libIIOP.la                            ../../../src/ORBitutil/libORBitutil.la                    libORBitCosNaming.la                                            -L/usr/lib -lglib                        -lm
i686-pc-linux-gnu-gcc -march=pentium-m -O2 -pipe -Wl,-O1 -Wl,--as-needed -o .libs/name-client name-client.o  ../../../src/orb/.libs/libORBit.so -L/usr/lib ../../../src/IIOP/.libs/libIIOP.so -lwrap ../../../src/ORBitutil/.libs/libORBitutil.so ./.libs/libORBitCosNaming.so /usr/lib/libglib.so -ldl -lm
./.libs/libORBitCosNaming.so: undefined reference to `giop_send_request_buffer_use'
./.libs/libORBitCosNaming.so: undefined reference to `giop_message_buffer_do_alignment'
./.libs/libORBitCosNaming.so: undefined reference to `giop_recv_reply_buffer_use_2'
./.libs/libORBitCosNaming.so: undefined reference to `giop_recv_buffer_unuse'
./.libs/libORBitCosNaming.so: undefined reference to `giop_send_buffer_write'
./.libs/libORBitCosNaming.so: undefined reference to `giop_send_buffer_unuse'
./.libs/libORBitCosNaming.so: undefined reference to `giop_message_buffer_append_mem'
collect2: ld returned 1 exit status
make[4]: *** [name-client] Error 1
make[4]: Leaving directory `/var/tmp/portage/portage/orbit-0.5.17-r1/work/ORBit-0.5.17/src/services/name'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/var/tmp/portage/portage/orbit-0.5.17-r1/work/ORBit-0.5.17/src/services'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/var/tmp/portage/portage/orbit-0.5.17-r1/work/ORBit-0.5.17/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/portage/orbit-0.5.17-r1/work/ORBit-0.5.17'
make: *** [all-recursive-am] Error 2

!!! ERROR: gnome-base/orbit-0.5.17-r1 failed.
--------------------------------------------------------------------------
traveler ~ $ emerge --info
Portage 2.1_pre7-r5 (default-linux/x86/2006.0, gcc-3.4.6, glibc-2.4-r1, 2.6.16-gentoo-r2 i686)
=================================================================
System uname: 2.6.16-gentoo-r2 i686 Intel(R) Pentium(R) M processor 1400MHz
Gentoo Base System version 1.12.0_pre17
ccache version 2.4 [enabled]
dev-lang/python:     2.4.2-r1
sys-apps/sandbox:    1.2.17
sys-devel/autoconf:  2.13, 2.59-r7
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2
sys-devel/binutils:  2.16.1-r2
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.11-r3
ACCEPT_KEYWORDS="x86 ~x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-march=pentium-m -O2 -pipe"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/NX/etc /usr/NX/home /usr/kde/2/share/config /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/kde/3/share/config /usr/share/X11/xkb /usr/share/config /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/eselect/compiler /etc/gconf /etc/revdep-rebuild /etc/terminfo /etc/texmf/web2c /etc/env.d"
CXXFLAGS="-march=pentium-m -O2 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig ccache confcache distlocks fixpackages metadata-transfer parallel-fetch prelink sandbox sfperms strict"
GENTOO_MIRRORS="http://gentoo.chem.wisc.edu/gentoo/ ftp://gentoo.chem.wisc.edu/gentoo/ http://mirror.espri.arizona.edu/gentoo/"
LC_ALL="en_US.UTF-8"
LDFLAGS="-Wl,-O1,--as-needed"
LINGUAS="en ja"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp/portage"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage /usr/local/xgl-coffee /usr/local/xgl-testing"
SYNC="rsync://rsync.us.gentoo.org/gentoo-portage"
USE="x86 7zip X X509 a52 aac aalib acl acpi ada akode alsa amarok amd amr ao apache2 apm arts artworkextra asf async audacious audiofile automount avi bash-completion berkdb bidi binfilter bitmap-fonts bonobo bzip2 c++ cairo cardbus ccache cdda cdio cdr cgi chroot cjk clamav clamd clearcase cli commercial corba cpudetection crypt crypto_openssl css cups curl cvs cxx daap dbus dcc devil dhcp dio directfb djvu dlloader double-precision dpms dri dts dv dvb dvd dvdr dvdread dvi dxr3 edl eds elf emboss encode esd ethereal evo exif exscalibar extraicons extramodules fastcgi fat fbcon fbsplash ffmpeg firefox flac fltk fmod font-server fontconfig foomaticdb fortran gb gcj gdbm ggi gif glitz glut glx gnome gnome-print gnutls gphoto2 gpm gstreamer gtk gtk2 gzip hal hash haskell hbci hfs hpn httpd icc idn ieee1394 image imagemagick imap imlib innodb iplsrc iproute2 ipv6 isdnlog java javascript jfs jikes jit john jpeg jpeg2k jumpplay kde kdepim kerberos kexi kig-scripting kqemu krb4 ladspa lame latex lcms ldap lesstif libcaca libclamav libdsk libg++ libnotify libvisual libwww live lm_sensors logrotate logwatch lzo lzw mad mail matroska md5sum mikmod mime mmx mmxext mng mod modplug mono motif mouse mozilla mozsvg mp3 mp4 mp4live mpd-mad mpeg mpeg2 mplayer msn mssql mudflap musepack music musicbrainz mysql mysqli mythtv mzscheme nas nautilus ncurses net network neural nfs njb nls nptl nptlonly nsplugin ntfs ntlm ntlm_unsupported_patch oav ocaml odbc offensive ofx ogg ogre ole openal openexr opengl openssh openssl pam pascal pcmcia pcntl pcre pdf perforce perl pertty pheaders php pic plib pmu png pnp postgres povray pppd print python pyzor qemu-fast qt quicktime quotas radiotap radius rar razor rc5 rdesktop readline real reflection reiser4 reiserfs remix rpm rrdcgi rrdtool rtc ruby samba sane sasl scanner sdl search sensord session sftp shorten shout sid skey skins slang slp smime smux sndfile snmp soundtouch speech speedo speex spell spf spl sql sqlite sse sse-filters sse2 ssl stream subject-rewrite subp subtitles subversion svg svga svgz swat syslog sysvipc szip t1lib tcltk tcpd tcpmd5 tetex theora thesaurus threads tidy tiff timidity truetype truetype-fonts type1 type1-fonts udev unicode urandom usb userlocales utf8 vcd vfat video_cards_ati video_cards_fglrx video_cards_glint video_cards_v4l video_cards_vesa video_cards_vga vim-with-x vlm vorbis widescreen wifi win32codecs winbind wma wmf wxwindows x264 xanim xcomposite xface xfs xine xml xml2 xmlreader xmlrpc xmlwriter xmms xosd xpm xprint xrandr xscreensaver xv xvid xvmc zeroconf zip zlib elibc_glibc input_devices_keyboard input_devices_mouse input_devices_synaptics kernel_linux linguas_en linguas_ja userland_GNU video_cards_radeon video_cards_fbdev"
Unset:  ASFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG
Comment 1 Thomas S. Howard 2006-05-19 16:12:54 UTC
Fixed this for --as-needed

With glib fixed (see bug #133818, this was trivial. Just a case of lazy linking rules. Basically, every library in this package references one or more of the other libraries in the package. So, of course, none of the Makefiles actually handled this, which is good, because if they had taken this into account, the libraries were being built in the wrong order anyway. Only the two libraries that didn't depend on the others linked correctly.
Comment 2 Thomas S. Howard 2006-05-19 16:13:51 UTC
Created attachment 87078 [details, diff]
orbit-0.5.17 --as-needed fix
Comment 3 Thomas S. Howard 2006-05-19 16:14:31 UTC
Created attachment 87079 [details, diff]
ebuild patch, orbit-0.5.17-r1, for --as-needed
Comment 4 Charles Hemingway 2006-05-25 10:31:07 UTC
(In reply to comment #3)
> Created an attachment (id=87079) [edit]
> ebuild patch, orbit-0.5.17-r1, for --as-needed
> 
These two patches have fixed it for me.  Compiles fine, GCC 4.1.0-r1.  Thanks Mr. Howard.
Comment 5 Thomas S. Howard 2006-05-27 18:23:31 UTC
Created attachment 87696 [details, diff]
 orbit-0.5.17 --as-needed fix, for use w/ eautomake

No longer alters the Makefile.in's
Comment 6 Thomas S. Howard 2006-05-27 18:40:33 UTC
Created attachment 87697 [details, diff]
ebuild patch, orbit-0.5.17-r1, for --as-needed, uses eautomake

The sed alterations may be unacceptable, I don't know. There are alternatives:
1. Use a patch to do the same thing.
2. Run automake instead of eautomake
3. Use the original patch to directly change the Makefile.in's, and avoid (e)automake entirely
3. Don't do anything to the Makefile.in's and run eautomake.

The last is why I used sed in the first place.  Like a number of other ebuilds, using eautomake triggers a full eautoreconf because of version mismatch between 1.4-p5 and 1.4-p6.  I fixed the other ebuilds, but I'm not going to do so here.
eautoreconf hopelessly breaks locale support when it re-configures the popt subdir, a directory which is irrelevant to the trivial changes made to four makefile.am's in the src subdir. I'm tired of trying to get a simple automake run and ending up with massive alterations that cause compilation/configuration to die because of a version mismatch which is guaranteed because 1.4-p6 is the only 1.4 of automake available in portage. I could probably get locale support to work again, but it'd be wasted effort as far as I'm concerned. If someone else wants to deal with it, they're welcome to it.
Comment 7 Lars Wendler (Polynomial-C) (RETIRED) gentoo-dev 2006-08-09 16:24:17 UTC
Created attachment 93875 [details]
orbit-config.log

Hi,

even with this patch orbit fails to finish configure when glib-1.2.10 was compiled with --as-needed with patch from bug #133818. Compiling glib-1.2.10 without --as-needed solves the problem with orbit.
This happens during configure:

...
checking alignment of CORBA_short... 2
checking alignment of CORBA_long... 4
checking alignment of CORBA_unsigned_short... 2
checking alignment of CORBA_unsigned_long... 4
checking alignment of CORBA_float... 4
checking alignment of CORBA_double... 4
checking alignment of CORBA_char... 1
checking alignment of CORBA_boolean... 1
checking alignment of CORBA_octet... 1
checking alignment of CORBA_long_double... 4
checking alignment of CORBA_wchar... 2
checking alignment of CORBA_long_long... 0
configure: error: Failed to find alignment. Check config.log for details.

!!! Please attach the following file when filing a report to bugs.gentoo.org:
!!! /home/portage/tmp/portage/orbit-0.5.17-r1/work/ORBit-0.5.17/config.log

!!! ERROR: gnome-base/orbit-0.5.17-r1 failed.

My emerge --info:

Portage 2.1-r2 (default-linux/x86/2006.0, gcc-3.4.6/vanilla, glibc-2.3.6-r4, 2.6.16.27 i686)
=================================================================
System uname: 2.6.16.27 i686 AMD Athlon(tm) XP 3000+
Gentoo Base System version 1.12.4
app-admin/eselect-compiler: 2.0.0_rc2-r1
dev-lang/python:     2.4.3-r1
dev-python/pycrypto: 2.0.1-r5
dev-util/ccache:     [Not Present]
dev-util/confcache:  [Not Present]
sys-apps/sandbox:    1.2.18.1
sys-devel/autoconf:  2.13, 2.60
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2
sys-devel/binutils:  2.17
sys-devel/gcc-config: [Not Present]
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.11-r2
ACCEPT_KEYWORDS="x86 ~x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-march=athlon-xp -mtune=athlon-xp -O3 -pipe -frename-registers"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /home /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/X11/xkb /usr/share/config"
CONFIG_PROTECT_MASK="/etc/X11/gdm /etc/env.d /etc/env.d/java/ /etc/eselect/compiler /etc/gconf /etc/gnome /etc/gnome-vfs-2.0 /etc/init.d /etc/java-config/vms/ /etc/revdep-rebuild /etc/ssl /etc/terminfo"
CXXFLAGS="-march=athlon-xp -mtune=athlon-xp -O3 -pipe -frename-registers -fvisibility-inlines-hidden"
DISTDIR="/usr/portage/distfiles"
EMERGE_DEFAULT_OPTS="--alphabetical"
FEATURES="autoconfig distlocks metadata-transfer sandbox sfperms strict userpriv usersandbox"
GENTOO_MIRRORS="ftp://sunsite.informatik.rwth-aachen.de/pub/Linux/gentoo ftp://linux.rz.ruhr-uni-bochum.de/gentoo-mirror ftp://ftp.tu-clausthal.de/pub/linux/gentoo http://distfiles.gentoo.org http://www.ibiblio.org/pub/Linux/distributions/gentoo"
LDFLAGS="-Wl,--as-needed"
LINGUAS="de"
PKGDIR="/home/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude='/distfiles' --exclude='/local' --exclude='/packages'"
PORTAGE_TMPDIR="/home/portage/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://192.168.0.254/gentoo-portage"
USE="x86 3dnow 3dnowext X a52 aac acpi alsa apache2 apm arts asf avi berkdb bitmap-fonts bluetooth bzip2 cdparanoia cdr cli crypt cups dri dvd dvdread emboss encode fam ffmpeg flac foomaticdb gdbm gif gnutls gpg gstreamer gtk gtk2 idn imagemagick imlib isdnlog jpeg kde libg++ libwww mad mikmod mjpeg mmx mmxext mp3 mpeg ncurses nls nptl nsplugin ogg oggvorbis opengl pam pcre pdflib perl png pppd python qt qt3 quicktime readline real reflection samba sdl session silc slang spell spl sse ssl svg tga theora tiff truetype truetype-fonts type1-fonts udev vcd vorbis win32codecs x264 xcomposite xml xml2 xmms xorg xprint xv xvid zlib elibc_glibc input_devices_keyboard input_devices_mouse kernel_linux linguas_de userland_GNU video_cards_nv video_cards_nvidia"
Unset:  CTARGET, INSTALL_MASK, LANG, LC_ALL, MAKEOPTS, PORTAGE_RSYNC_EXTRA_OPTS

regards
Poly-C
Comment 8 Steve Kutnar 2006-09-18 19:29:34 UTC
Same configure issue here...


Portage 2.1.1 (default-linux/x86/2006.0, gcc-4.1.1, glibc-2.4.90.20060915-r0, 2.6.17-gentoo-r7 i686)
=================================================================
System uname: 2.6.17-gentoo-r7 i686 AMD Athlon(tm) 64 X2 Dual Core Processor 4400+
Gentoo Base System version 1.12.5
Last Sync: Sat, 16 Sep 2006 01:20:01 +0000
distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled]
ccache version 2.4 [enabled]
app-admin/eselect-compiler: [Not Present]
dev-java/java-config: 1.3.6-r1, 2.0.28-r1
dev-lang/python:     2.4.3-r3
dev-python/pycrypto: 2.0.1-r5
dev-util/ccache:     2.4-r6
dev-util/confcache:  [Not Present]
sys-apps/sandbox:    1.2.18.1
sys-devel/autoconf:  2.13, 2.60
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2
sys-devel/binutils:  2.17.50.0.3
sys-devel/gcc-config: 1.3.13-r3
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.17
ACCEPT_KEYWORDS="x86 ~x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-march=k8 -msse3 -O2 -pipe -fno-ident -fomit-frame-pointer -ftracer -freorder-blocks-and-partition"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/X11/xkb /var/qmail/alias /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/gconf /etc/java-config/vms/ /etc/revdep-rebuild /etc/terminfo"
CXXFLAGS="-march=k8 -msse3 -O2 -pipe -fno-ident -fomit-frame-pointer -ftracer -freorder-blocks-and-partition"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig ccache distlocks metadata-transfer sandbox sfperms strict"
GENTOO_MIRRORS="http://mirror.datapipe.net/gentoo http://gentoo.chem.wisc.edu/gentoo/ http://gentoo.mirrors.tds.net/gentoo ftp://gentoo.mirrors.pair.com/"
LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,--sort-common -Wl,--hash-style=both"
LINGUAS="en"
MAKEOPTS="-j3"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude='/distfiles' --exclude='/local' --exclude='/packages'"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage /usr/portage/local/layman/toolchain_overlay"
SYNC="rsync://apollo.clarkconnect.lan/gentoo-portage"
USE="x86 3dnow 3dnowext X Xaw3d a52 aac aalib alsa amr aotuv asf bash-completion berkdb bitmap-fonts bzip2 cairo caps cddb cdinstall cdparanoia cdr crypt cups curl dbus dga djbfft dlloader dri dts dv dvd dvdr dvdread elibc_glibc emacs enca encode exif exo expat fam fbcon ffmpeg firefox flac foomaticdb fortran fpx ft gd gdbm gencertdaily ggi gif glibc-omitfp glitz gmp gnutls gphoto2 gpm gs gstreamer gtk gtk2 hal iconv idn imagemagick imlib input_devices_evdev input_devices_joystick input_devices_keyboard input_devices_mouse insecure-savers ithreads java javascript jbig jpeg jpeg2k kernel_linux lcms libcaca linguas_en lm_sensors logrotate lzo mad mikmod mmap mmx mmxext mng modplug motif mp3 mp4 mpeg musepack ncurses network nls nptl nptlonly nsplugin numeric offensive ogg openal openexr opengl oss pam panel-plugin pcre pdf perl pic png ppds python quicktime readline real rle rtc samba sdl shorten slang slp smp sndfile sox speex spell sse sse2 ssl startup-notification svg syslog tcl tcltk tcpd tga theora threads thunar-vfs tiff tk toolbar truetype truetype-fonts type1-fonts usb userland_GNU vcd video_cards_nv video_cards_nvidia video_cards_vesa vidix vim-with-x vorbis vorbis-psy win32codecs wmf wxwindows x264 xanim xcomposite xine xml xmms xpm xscreensaver xslt xv xvid xvmc zlib"
Unset:  CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, PORTAGE_RSYNC_EXTRA_OPTS
Comment 9 Saleem Abdulrasool (RETIRED) gentoo-dev 2006-11-28 21:56:37 UTC
Marked for removal.  Please migrate to gnome-2.x