Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 396653 - app-misc/lirc-0.9.0 fails to emerge because of unrecognised emulation mode: -Wl,-soname
Summary: app-misc/lirc-0.9.0 fails to emerge because of unrecognised emulation mode: -...
Status: RESOLVED DUPLICATE of bug 160134
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal with 2 votes (vote)
Assignee: Television related Applications in Gentoo's Portage
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: 403309
  Show dependency tree
 
Reported: 2012-01-01 08:05 UTC by Juergen Rose
Modified: 2012-07-21 22:07 UTC (History)
13 users (show)

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


Attachments
/var/tmp/portage/app-misc/lirc-0.9.0/temp/build.log (build.log,19.56 KB, text/plain)
2012-01-01 08:06 UTC, Juergen Rose
Details
patch for lirc 0.9.0 ebuild (lirc_ebuild.patch,573 bytes, patch)
2012-01-03 15:58 UTC, Thomas Pfaff
Details | Diff
the build log (lirc-0.8.7_build.log,19.55 KB, text/plain)
2012-02-14 11:14 UTC, Ian Delaney (RETIRED)
Details
my emerge --info (emerge.info,4.62 KB, text/plain)
2012-02-14 11:42 UTC, Ian Delaney (RETIRED)
Details
patched ebuild with disabled get_abi_LDFLAGS (lirc-0.9.0-r1.ebuild.patch,345 bytes, patch)
2012-02-15 22:37 UTC, womble
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Juergen Rose 2012-01-01 08:05:27 UTC
'emerge lirc' fails with:
...
make[2]: Entering directory `/var/tmp/portage/app-misc/lirc-0.9.0/work/lirc-0.9.0/tools'
/bin/sh ../libtool --tag=CC   --mode=compile x86_64-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I.. -I..    -march=native -O2 -pipe -MT lirc_client.lo -MD -MP -MF .deps/lirc_client.Tpo -c -o lirc_client.lo lirc_client.c
libtool: compile:  x86_64-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I.. -I.. -march=native -O2 -pipe -MT lirc_client.lo -MD -MP -MF .deps/lirc_client.Tpo -c lirc_client.c  -fPIC -DPIC -o .libs/lirc_client.o
libtool: compile:  x86_64-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I.. -I.. -march=native -O2 -pipe -MT lirc_client.lo -MD -MP -MF .deps/lirc_client.Tpo -c lirc_client.c -o lirc_client.o >/dev/null 2>&1
mv -f .deps/lirc_client.Tpo .deps/lirc_client.Plo
/bin/sh ../libtool --tag=CC   --mode=link x86_64-pc-linux-gnu-gcc  -march=native -O2 -pipe -version-info 2:1:2 -m elf_x86_64 -o liblirc_client.la -rpath /usr/lib64 lirc_client.lo  
libtool: link: x86_64-pc-linux-gnu-gcc -shared  -fPIC -DPIC  .libs/lirc_client.o    -march=native -O2 -m   -Wl,-soname -Wl,liblirc_client.so.0 -o .libs/liblirc_client.so.0.2.1
/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../../x86_64-pc-linux-gnu/bin/ld: unrecognised emulation mode: -Wl,-soname
Supported emulations: elf_x86_64 elf32_x86_64 elf_i386 i386linux elf_l1om elf_k1om
collect2: ld returned 1 exit status
make[2]: *** [liblirc_client.la] Error 1


Reproducible: Always




root@wildcat:/root(123)# emerge --info =app-misc/lirc-0.9.0
Portage 2.1.10.44 (default/linux/amd64/10.0, gcc-4.5.3, glibc-2.14.1-r1, 3.1.6-gentoo x86_64)
=================================================================
                        System Settings
=================================================================
System uname: Linux-3.1.6-gentoo-x86_64-Intel-R-_Core-TM-2_Duo_CPU_T7300_@_2.00GHz-with-gentoo-2.1
Timestamp of tree: Sun, 01 Jan 2012 07:30:01 +0000
app-shells/bash:          4.2_p20
dev-lang/python:          2.7.2-r3, 3.1.4-r3, 3.2.2
dev-util/cmake:           2.8.6-r4
dev-util/pkgconfig:       0.26
sys-apps/baselayout:      2.1
sys-apps/openrc:          0.9.7
sys-apps/sandbox:         2.5
sys-devel/autoconf:       2.13, 2.68
sys-devel/automake:       1.10.3, 1.11.2
sys-devel/binutils:       2.22-r1
sys-devel/gcc:            4.5.3-r2
sys-devel/gcc-config:     1.5-r2
sys-devel/libtool:        2.4.2
sys-devel/make:           3.82-r3
sys-kernel/linux-headers: 3.1 (virtual/os-headers)
sys-libs/glibc:           2.14.1-r1
Repositories: gentoo science x-portage x-cpan x-g-octave
ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="* -@EULA PUEL dlj-1.1 skype-eula googleearth AdobeFlash-10.1 cadsoft Oracle-BCLA-JavaSE"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=native -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 /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-march=native -O2 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="assume-digests binpkg-logs distlocks ebuild-locks fixlafiles news parallel-fetch protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch"
FFLAGS=""
GENTOO_MIRRORS="http://distfiles.gentoo.org"
LC_ALL="C"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
LINGUAS="de fr"
MAKEOPTS="-j3"
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/science /usr/local/portage /var/lib/cpan /var/lib/g-octave"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="64bit R X Xaw3d a52 aac acl acpi afs alsa amd64 ao apache2 applet archive arpack asf aspell assistant atlas audacious audiofile automap automount bash-completion berkdb blas blast bluetooth boost bzip2 cairo cdda cddb cdf cdio cdparanoia cdr cgi chm cli consolekit cracklib crypt css cups curl cxx daap db dbase dbi dbm dbus declarative designer devhelp device-mapper dga dia djvu dri ds2490 ds9097 ds9097u dv dvb dvd dvdr dvi dynamicplugin eds elf emacs emboss emf encode epiphany evo examples exif expat extensions extra extras ffmpeg fftw firefox fits flac fltk fontconfig foomaticdb fortran fortran95 fpx fts3 fuse gd gdal gdbm gdu gedit geoip geolocation geos gfortran gif gimp ginac git glade glib glpk gml gmp gmtsuppl gnome gnome-keyring gnome-print gnuplot gnutls gphoto2 gpm grammar graphics graphtft graphviz grass gs gsl gsm gstreamer gtk gudev guile hddtemp hdf hdf5 hdri http httpd hvm hwdb iconv icq icu id3 ide imagemagick imap innodb inotify ipv6 ithreads jabber jadetex jbig john jpeg jpeg2k kdrive kerberos kpathsea kqemu kvm lame lapack laptop latex latex3 lcms ldap libffi libgda libnotify libsamplerate lirc lua lzo mad mail maildir mapnik math matroska mkl mmx mng modules mozilla mp3 mp4 mpeg mpi mplayer mtp mudflap multilib musicbrainz mysql mysqli nautilus ncurses netcdf netpbm network networking networkmanager nfs nls nptl nptlonly nsplugin ntp numpy obex objc ocaml ocr octave odbc ogdi ogg ole openexr opengl openmp overview pam pcre pda pdf perl plotutils plugins png policykit portaudio posix postgres postscript ppds pppd preview-latex proj projectx pstricks pulseaudio python python-bindings q16 q32 qhull qt4 quicktime readline reiserfs reports rle romio rpc rrdcgi rrdtool samba sasl science sdk sdl secure-delete semantic-desktop session sip slang slp smbclient smp sms sndfile snmp soup sox speex spell sql sqlite sse sse2 ssl ssse3 subtitles subversion suexec svg svm swig sysfs szip t1lib tcl tcpd tex texmacs tgif theora thinkpad threads thunderbird tidy tiff tk tools truetype udev unicode usb userlocales vaapi video virtualbox vorbis wav webdav webdav-serf webkit wifi wmf wxwidgets xattr xcb xemacs xext xft xine xml xmlreader xmlrpc xorg xpm xulrunner xv xvid xvmc yaml zlib zvbi" 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" CALLIGRA_FEATURES="kexi words flow plan stage tables krita karbon braindump" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" DVB_CARDS="usb-wt220u" 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="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="de fr" PHP_TARGETS="php5-3" QEMU_SOFTMMU_TARGETS="i386 ppc ppc64 x86_64" QEMU_USER_TARGETS="arm i386 x86_64" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="i810" 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, INSTALL_MASK, LANG, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS



root@wildcat:/root(124)# emerge -pqv =app-misc/lirc-0.9.0
[ebuild  N    ] app-misc/lirc-0.9.0  USE="X -debug -doc -hardware-carrier -transmitter" LIRC_DEVICES="-accent -act200l -act220l -adaptec -all -alsa_usb -animax -asusdh -atilibusb -atiusb -audio -audio_alsa -avermedia -avermedia98 -avermedia_vdomate -awlibusb -bestbuy -bestbuy2 -breakoutbox -bte -bw6130 -caraca -chronos -commandir -cph06x -creative -creative_infracd -devinput -digimatrix -dsp -dvico -ea65 -ene0100 -exaudio -flyvideo -ftdi -gvbctv5pci -hauppauge -hauppauge_dvb -hercules_smarttv_stereo -i2cuser -igorplugusb -iguanaIR -imon -imon_24g -imon_knob -imon_lcd -imon_pad -imon_rsc -inputlirc -irdeo -irdeo_remote -irlink -irman -irreal -it87 -ite8709 -knc_one -kworld -leadtek_0007 -leadtek_0010 -leadtek_pvr2000 -livedrive_midi -livedrive_seq -logitech -macmini -mediafocusI -mouseremote -mouseremote_ps2 -mp3anywhere -mplay -nslu2 -packard_bell -parallel -pcmak -pcmak_usb -pctv -pixelview_bt878 -pixelview_pak -pixelview_pro -provideo -realmagic -remote_wonder_plus -remotemaster -sa1100 -samsung -sasem -sb0540 -serial -serial_igor_cesko -silitek -sir -slinke -streamzap -tekram -tekram_bt829 -tira -ttusbir -tuxbox -tvbox -udp -uirt2 -uirt2_raw -usb_uirt_raw -usbirboy -usbx -userspace -wpc8769l -xboxusb"
Comment 1 Juergen Rose 2012-01-01 08:06:41 UTC
Created attachment 297509 [details]
/var/tmp/portage/app-misc/lirc-0.9.0/temp/build.log
Comment 2 Thomas Pfaff 2012-01-03 15:58:43 UTC
Created attachment 297795 [details, diff]
patch for lirc 0.9.0 ebuild

Same here, please consider the patch for the lirc ebuild.
With the patched ebuild emerging lirc worked for me,
Comment 3 Kfir Ozer 2012-01-04 20:45:37 UTC
thanks for the patch.
Comment 4 Juergen Rose 2012-01-06 07:13:56 UTC
The patched worked for me too.
Comment 5 Gregg Casillo 2012-01-09 18:55:44 UTC
Patched worked for me too. Thank you, Thomas.
Comment 6 Juergen Rose 2012-01-13 16:38:56 UTC
Almost two weeks later I hit this issue again during 'emerge -uvDNe system'.
Could someone add the patch to the standard portage tree?
Comment 7 Gregg Casillo 2012-01-25 18:34:29 UTC
Third time since the patch was posted that I ran into this after a kernel upgrade. Can we please get this in portage ASAP.
Comment 8 JTRiley 2012-02-02 18:51:46 UTC
Just encountered this myself. Put the patched ebuild in my overlay:

http://git.overlays.gentoo.org/gitweb/?p=user/jtriley.git
Comment 9 Ian Delaney (RETIRED) gentoo-dev 2012-02-14 11:14:54 UTC
Created attachment 301897 [details]
the build log

just encountered this in the stable o.8.7
Comment 10 Ian Delaney (RETIRED) gentoo-dev 2012-02-14 11:42:11 UTC
Created attachment 301899 [details]
my emerge --info
Comment 11 Patrick Lauer gentoo-dev 2012-02-15 06:21:18 UTC
+src_compile() {
+	econf ${ECONF_PARAMS} || "die configure failed"

that should be in src_configure and looks very default

why would that fix building lirc?
Comment 12 womble 2012-02-15 22:35:58 UTC
(In reply to comment #11)
> +src_compile() {
> +    econf ${ECONF_PARAMS} || "die configure failed"
> 
> that should be in src_configure and looks very default
> 
> why would that fix building lirc?

I hit the same bug today.  And just by chance I had an old logfile of a
successfull emerge of lirc-0.8.7 around, and used it to to check for differences, although lirc-0.8.7 does not compile anymore for my setup.

It seems that the current ebuild invokes make with an LDFLAGS arg as
    make ... 'LDFLAGS=-m elf_x86_64' all
whereas the old logfile shows the line
    make ... LDFLAGS= all
and indeed simply invoking make without the LDFLAGS arg works for me,
and I think that is how the ebuild patch from Thomas works, too.

The relevant rather long lines from my two log files are:
    lirc-0.9.0, current failed emerge:
        make -j3 -j1 HOSTCC=x86_64-pc-linux-gnu-gcc CROSS_COMPILE=x86_64-pc-linux-gnu- 'LDFLAGS=-m elf_x86_64' all
        ...
        /bin/sh ../libtool --tag=CC   --mode=link x86_64-pc-linux-gnu-gcc  -march=athlon64 -O2 -pipe -version-info 2:1:2 -m elf_x86_64 -o liblirc_client.la -rpath /usr/lib64 lirc_client.lo
        libtool: link: x86_64-pc-linux-gnu-gcc -shared  -fPIC -DPIC  .libs/lirc_client.o    -march=athlon64 -O2 -m   -Wl,-soname -Wl,liblirc_client.so.0 -o .libs/liblirc_client.so.0.2.1
        /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../../x86_64-pc-linux-gnu/bin/ld: unrecognised emulation mode: -Wl,-soname

    lirc-0.8.7-OLD-SETUP-WHICH-HAS-WORKED-ONCE-BUT-DOES-NOT-ANYMORE:
        make -j3 -j1 HOSTCC=x86_64-pc-linux-gnu-gcc CROSS_COMPILE=x86_64-pc-linux-gnu- LDFLAGS= all
        ...
        /bin/sh ../libtool --tag=CC   --mode=link x86_64-pc-linux-gnu-gcc  -march=athlon64 -O2 -pipe -version-info 2:1:2  -o liblirc_client.la -rpath /usr/lib64 lirc_client.lo
        libtool: link: x86_64-pc-linux-gnu-gcc -shared  .libs/lirc_client.o    -march=athlon64   -Wl,-soname -Wl,liblirc_client.so.0 -o .libs/liblirc_client.so.0.2.1
        ...
        [success]

or in short:
    OLD: make ... LDFLAGS= all
    NEW: make ... 'LDFLAGS=-m elf_x86_64' all

    OLD: /bin/sh ../libtool ...
         libtool: link: ...
    NEW: /bin/sh ../libtool ...  -m elf_x86_64  ...
         libtool: link: ... -m -Wl,-soname ...
         #
         # the 'elf_x86_64' option is dropped by libtool, but the '-m' is not.
         # As a result ld sees the above sequence '-m -Wl,-soname' and treats
         # '-Wl,-soname' as the emulation mode argument to '-m'

I have no idea why make is called differently in both logfiles.

Afaik in the lirc ebuild the inherited 'linux-mod' eclass provides a default
'src_compile' function which calls 'linux-mod_src_compile' which then calls
    eval "emake ... LDFLAGS=\"$(get_abi_LDFLAGS)\" ..."
which in turn results in the above make call.

However, checking the history of /usr/portage/eclass/linux-mod.eclass
I found that the LDFLAGS line was introduced in version 1.79 from 2008!
Likewise, 'get_abi_LDFLAGS' from multilib.eclass seems to be out of
question as the cause for this bug.

Still, I simply disabled 'get_abi_LDFLAGS' in my patched ebuild by
redefining it to be empty, and lirc compiles and works.

All in all I have no idea whats going on here.

Regards,
Womble
Comment 13 womble 2012-02-15 22:37:19 UTC
Created attachment 302083 [details, diff]
patched ebuild with disabled get_abi_LDFLAGS
Comment 14 Gregg Casillo 2012-03-04 18:40:49 UTC
Ran into this bug two months and I don't know how many kernel versions ago. Can we finally get this resolved?
Comment 15 Kamen Dokov 2012-03-08 12:40:05 UTC
Yea please fix it!
Comment 16 Michael Brakemeier 2012-03-08 14:22:30 UTC
Confirmed on current amd64 profile.

This one was (at least) already reported in Bug 160134, Bug 218717 and Bug 396537
Comment 17 Fabian Henze 2012-03-09 00:30:13 UTC
I hate to post "Me too" comments, but this bug is unresolved for *way* too much time. When will this be in the tree?
Comment 18 milton 2012-03-12 23:25:49 UTC
app-misc/lirc-0.8.7 "stable" is also affected by this!

/bin/sh ../libtool --tag=CC   --mode=link x86_64-pc-linux-gnu-gcc  -msse3 -fomit-frame-pointer -O2 -version-info 2:1:2 -m elf_x86_64 -o liblirc_client.la -rpath /usr/lib64 lirc_client.lo  
libtool: link: x86_64-pc-linux-gnu-gcc -shared  -fPIC -DPIC  .libs/lirc_client.o    -msse3 -O2 -m   -Wl,-soname -Wl,liblirc_client.so.0 -o .libs/liblirc_client.so.0.2.1
/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../../x86_64-pc-linux-gnu/bin/ld: unrecognised emulation mode: -Wl,-soname
Supported emulations: elf_x86_64 elf_i386 i386linux elf_l1om
collect2: ld returned 1 exit status
make[2]: *** [liblirc_client.la] Erreur 1
make[2] : on quitte le répertoire « /var/tmp/portage/app-misc/lirc-0.8.7/work/lirc-0.8.7/tools »
Comment 19 Brandon Penglase 2012-03-25 03:25:20 UTC
(In reply to comment #13)
> Created attachment 302083 [details, diff] [details, diff]
> patched ebuild with disabled get_abi_LDFLAGS

I just ran into this myself. Applying the patch, from comment I'm replying to, fixed it for me.
Comment 20 Christian Ruppert (idl0r) gentoo-dev 2012-04-13 03:29:49 UTC

*** This bug has been marked as a duplicate of bug 160134 ***
Comment 21 Juergen Rose 2012-04-26 10:40:59 UTC
Almost four month later I hit this bug again at a new system, it would be really good if the patched version of lirc could enter the main portage tree.
Comment 22 Juergen Rose 2012-04-26 10:44:43 UTC
If comment 28 says that this bug is not a duplicate of bug 160134 https://bugs.gentoo.org/show_bug.cgi?id=160134#c28 , then this bug should be reopened.