Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 692512 - =media-sound/denemo-2.3.0 USE=jack fails with ld: error: //usr/lib/libjack.so: incompatible target - on x86 multilib
Summary: =media-sound/denemo-2.3.0 USE=jack fails with ld: error: //usr/lib/libjack.so...
Status: RESOLVED WORKSFORME
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Bernd
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: no-symlink-lib
  Show dependency tree
 
Reported: 2019-08-19 10:27 UTC by Bernd
Modified: 2021-04-09 21:14 UTC (History)
2 users (show)

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


Attachments
denemo-2.3.0:20190819-102622.log (denemo-2.3.0:20190819-102622.log,43.79 KB, text/plain)
2019-08-19 10:28 UTC, Bernd
Details
denemo-2.3.0:20190819-102929.log.bz2 (denemo-2.3.0:20190819-102929.log.bz2,39.89 KB, application/x-bzip)
2019-08-19 10:33 UTC, Bernd
Details
denemo-2.3.0:20190819-103514.log (denemo-2.3.0:20190819-103514.log,975.01 KB, text/plain)
2019-08-19 10:38 UTC, Bernd
Details
emerge-info-denemo.txt (emerge-info-denemo.txt,14.41 KB, text/plain)
2019-08-19 10:39 UTC, Bernd
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Bernd 2019-08-19 10:27:21 UTC
When trying to emerge media-sound/denemo-2.3.0 with USE=jack enabled it fails with

/usr/lib/gcc/x86_64-pc-linux-gnu/8.3.0/../../../../x86_64-pc-linux-gnu/bin/ld: error: //usr/lib/libjack.so: incompatible target
/usr/lib/gcc/x86_64-pc-linux-gnu/8.3.0/../../../../x86_64-pc-linux-gnu/bin/ld: warning: skipping incompatible /usr/lib/libxml2.so while searching for xml2

followed by more similar errors.

I first was thinking, this might be related to bug #691274, but now I think, it might have several causes.

When manually changing the libdir entry from in /usr/lib64/pkgconfig/rubberband.pc to read ${exec_prefix}/lib64, the build succeeds even with USE=jack enabled.

What I don't understand, why libtool is picking jack to convert the 'relative' library -ljack into an absolute path /usr/lib/libjack.so (see below). There are a bunch of other libraries, which also get linked into the binaries and are available in both abi_x86_64 and abi_x86_32 on my machine. The configure.ac snippet which searches for jack, looks unconspicuous to me.

/bin/sh ../libtool  --tag=CC   --mode=link x86_64-pc-linux-gnu-gcc  -O2 -pipe -march=bdver2 -fstack-protector-strong -fstack-check -pthread -I/usr/include/guile/2.0 -fdiagnostics-color=auto -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/libxml2 -pthread -I/usr/include/librsvg-2.0 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/uuid -I/usr/include/freetype2 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/libdrm -I/usr/include/libpng16 -I/usr/include/uuid -I/usr/include/freetype2 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -lgthread-2.0 -pthread -lglib-2.0 -lsndfile -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -D_HAVE_JACK_   -D_WITH_AUBIO_4_ -pthread -I/usr/include/gtk-3.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include -I/usr/include/gtk-3.0 -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/fribidi -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/harfbuzz -I/usr/include/libdrm -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng16 -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/uuid -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -pthread -I/usr/include/gtksourceview-3.0 -I/usr/include/libxml2 -I/usr/include/gtk-3.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include -I/usr/include/gtk-3.0 -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/fribidi -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/harfbuzz -I/usr/include/libdrm -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng16 -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/uuid -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -pthread -I/usr/include/evince/3.0 -I/usr/include/gtk-3.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include -I/usr/include/gtk-3.0 -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/fribidi -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/harfbuzz -I/usr/include/libdrm -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng16 -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/uuid -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -DUSE_EVINCE -I/usr/include/alsa -D_HAVE_ALSA_ -D_HAVE_FLUIDSYNTH_  -D_HAVE_RUBBERBAND_  -D_HAVE_PORTAUDIO_ -pthread  -D_HAVE_PORTMIDI_ -D_HAVE_X11_  -Wl,-O1 -Wl,--as-needed -Wl,--defsym=__gentoo_check_ldflags__=0 -o cairo_svg2path cairo_svg2path.o  -lguile-2.0 -lgc  -lglib-2.0 -lxml2 -lrsvg-2 -lm -lgio-2.0 -lgdk_pixbuf-2.0 -lgobject-2.0 -lglib-2.0 -lcairo -lfontconfig -lfreetype -lgthread-2.0 -pthread -lglib-2.0 -lsndfile -lsmf -lm -lglib-2.0 -D_HAVE_JACK_ -ljack -lpthread -laubio -lgtk-3 -lgdk-3 -lpangocairo-1.0 -lpango-1.0 -latk-1.0 -lcairo-gobject -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -lglib-2.0 -lgtksourceview-3.0 -lgtk-3 -lgdk-3 -lpangocairo-1.0 -lpango-1.0 -latk-1.0 -lcairo-gobject -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -lglib-2.0 -levview3 -levdocument3 -lgtk-3 -lgdk-3 -lpangocairo-1.0 -lpango-1.0 -latk-1.0 -lcairo-gobject -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -lgthread-2.0 -pthread -lglib-2.0 -DUSE_EVINCE -lasound -D_HAVE_FLUIDSYNTH_ -lfluidsynth -D_HAVE_RUBBERBAND_ -L/usr/lib -lrubberband -lportaudio -lasound -lm -lpthread -lfftw3 -lportmidi  -D_HAVE_X11_
libtool: link: x86_64-pc-linux-gnu-gcc -O2 -pipe -march=bdver2 -fstack-protector-strong -fstack-check -pthread -I/usr/include/guile/2.0 -fdiagnostics-color=auto -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/libxml2 -pthread -I/usr/include/librsvg-2.0 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/uuid -I/usr/include/freetype2 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/libdrm -I/usr/include/libpng16 -I/usr/include/uuid -I/usr/include/freetype2 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -pthread -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -D_HAVE_JACK_ -D_WITH_AUBIO_4_ -pthread -I/usr/include/gtk-3.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include -I/usr/include/gtk-3.0 -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/fribidi -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/harfbuzz -I/usr/include/libdrm -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng16 -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/uuid -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -pthread -I/usr/include/gtksourceview-3.0 -I/usr/include/libxml2 -I/usr/include/gtk-3.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include -I/usr/include/gtk-3.0 -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/fribidi -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/harfbuzz -I/usr/include/libdrm -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng16 -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/uuid -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -pthread -I/usr/include/evince/3.0 -I/usr/include/gtk-3.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include -I/usr/include/gtk-3.0 -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/fribidi -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/harfbuzz -I/usr/include/libdrm -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng16 -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/uuid -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -DUSE_EVINCE -I/usr/include/alsa -D_HAVE_ALSA_ -D_HAVE_FLUIDSYNTH_ -D_HAVE_RUBBERBAND_ -D_HAVE_PORTAUDIO_ -pthread -D_HAVE_PORTMIDI_ -D_HAVE_X11_ -Wl,-O1 -Wl,--defsym=__gentoo_check_ldflags__=0 -o generate_source generate_source.o -pthread -D_HAVE_JACK_ -pthread -DUSE_EVINCE -D_HAVE_FLUIDSYNTH_ -D_HAVE_RUBBERBAND_ -D_HAVE_X11_  -Wl,--as-needed -lguile-2.0 -lgc -lxml2 -lrsvg-2 -lfontconfig -lfreetype -lsndfile -lsmf //usr/lib/libjack.so -ldb -ldl -laubio -lgtksourceview-3.0 -levview3 -levdocument3 -lgtk-3 -lgdk-3 -lpangocairo-1.0 -lpango-1.0 -latk-1.0 -lcairo-gobject -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -lgthread-2.0 -lglib-2.0 -lfluidsynth -L/usr/lib -lrubberband -lportaudio -lasound -lm -lpthread -lfftw3 -lportmidi -pthread -Wl,-rpath -Wl,//usr/lib
/usr/lib/gcc/x86_64-pc-linux-gnu/8.3.0/../../../../x86_64-pc-linux-gnu/bin/ld: error: //usr/lib/libjack.so: incompatible target

Building without USE=jack finishes the build.
I'm going to attach build logs for several use cases on this.
Comment 1 Bernd 2019-08-19 10:28:51 UTC
Created attachment 587396 [details]
denemo-2.3.0:20190819-102622.log

USE=jack, unmodified rubberband.pc
Comment 2 Bernd 2019-08-19 10:33:17 UTC
Created attachment 587398 [details]
denemo-2.3.0:20190819-102929.log.bz2

USE=-jack, unmodified rubberband.pc, compressed due to size
Comment 3 Bernd 2019-08-19 10:38:35 UTC
Created attachment 587400 [details]
denemo-2.3.0:20190819-103514.log

USE=jack modified /usr/lib64/pkgconfig/rubberband.pc, so that libdir=${exec_prefix}/lib64
Comment 4 Bernd 2019-08-19 10:39:54 UTC
Created attachment 587402 [details]
emerge-info-denemo.txt

output from emerge --info denemo
Comment 5 Bernd 2021-04-09 21:14:32 UTC
The issue no longer appears.
Closing this, feel free to re-open if anyone is hitting the bug.