Summary: | media-video/bino-1.4.2-r1 - ld: /usr/lib64/libGL.so: undefined reference to symbol 'XextAddDisplay' | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Silvio <silvio.gerli> |
Component: | Current packages | Assignee: | Jožka Kejzlar (cuchac) <cuchac> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | proxy-maint, robbat2, silvio.gerli |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | AMD64 | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Bug Depends on: | 501374 | ||
Bug Blocks: | 372079 | ||
Attachments: |
my build.log
bino-1.4.2-underlinking.patch build.log with patch bino-1.4.2-underlinking.patch |
Description
Silvio
2014-01-30 11:08:27 UTC
Created attachment 369110 [details]
my build.log
Please post your `eselect opengl list' output in a comment. --- bino-1.4.2-r1.ebuild +++ bino-1.4.2-r1.ebuild @@ -45,6 +45,7 @@ PATCHES=( "${FILESDIR}/${P}-lirc-detect.patch" # detect lirc + "${FILESDIR}/${P}-underlinking.patch" # fix libXext underlinking #499772 ) src_configure() { Created attachment 369130 [details, diff]
bino-1.4.2-underlinking.patch
here it is: # eselect opengl list Available OpenGL implementations: [1] nvidia * [2] xorg-x11 So, what could be the problem? Some news? Have you tried my patch? Created attachment 369410 [details]
build.log with patch
Error even with patch. It exits in this way:
x86_64-pc-linux-gnu-g++ -march=native -O2 -pipe -fomit-frame-pointer -pthread -Wl,-O1 -Wl,--as-needed -I/usr/lib64 -zmuldefs -o bino media_data.o media_object.o media_input.o dispatch.o command_file.o color_matrix.o video_output.o video_output_qt.o subtitle_renderer.o audio_output.o player.o gui.o lib_versions.o main.o NvSDIout.o NvSDIutils.o qt_resources-rcc.o gui-moc.o video_output_qt-moc.o ../src/base/libbase.a -lXext -lavformat -lavcodec -lavutil -lavdevice -lswscale -lavutil -lass -lopenal -lGL -lGLEWmx -lGLU -lGL -L/usr/lib64/qt4 -lQtOpenGL -lQtGui -lQtCore -lX11 -lXNVCtrl -lpthread
/usr/lib/gcc/x86_64-pc-linux-gnu/4.8.2/../../../../x86_64-pc-linux-gnu/bin/ld: /usr/lib/gcc/x86_64-pc-linux-gnu/4.8.2/../../../../lib64/libGL.so: undefined reference to symbol 'XextAddDisplay'
/usr/lib/gcc/x86_64-pc-linux-gnu/4.8.2/../../../../lib64/libXext.so: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
Makefile:665: recipe for target 'bino' failed
make[4]: *** [bino] Error 1
make[4]: Leaving directory '/var/tmp/portage/media-video/bino-1.4.2-r1/work/bino-1.4.2_build/src'
Makefile:844: recipe for target 'all-recursive' failed
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory '/var/tmp/portage/media-video/bino-1.4.2-r1/work/bino-1.4.2_build/src'
Makefile:579: recipe for target 'all' failed
make[2]: *** [all] Error 2
make[2]: Leaving directory '/var/tmp/portage/media-video/bino-1.4.2-r1/work/bino-1.4.2_build/src'
Makefile:446: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
Any other idea? Re-emerge the nvidia -drivers, "eselect opengl set xorg-x11 && eselect opengl set nvidia" and retry bino. Oddly enough the error message disappeared for me after including libXext. I re-emerged nvidia-drivers and make as you said (eslect ...) nothing changes: it fails both with the patch and without I tried also: eslect opengl xorg-x11 emerge -1v bino nothing changes: failure all the same Other ideas? the bug is still here :( The bug is related with "nvidia". If I compile so: # VIDEO_CARDS=nv emerge -1v bino These are the packages that would be merged, in order: Calculating dependencies... done! [ebuild R ] media-video/bino-1.4.2-r1::manual [1.4.2-r1::gentoo] USE="-doc -lirc" LINGUAS="en -bg -de -fr -ru" VIDEO_CARDS="-nvidia*" 0 kB (..) it compiles well! I have the slight feeling this is due to your nvidia-drivers with some underlinking in nvidia's libGL. I can't confirm this, primarily due to the lack of nvidia graphics. Created attachment 371908 [details, diff]
bino-1.4.2-underlinking.patch
bino-1.4.2-underlinking.patch v2
I've been finally able to reproduce this bug. It always surprises me that libraries order on linker the command line does matter. Thanks Ted for the patch, I just made a trivial modification to bino-1.4.2-underlinking.patch and everything is working now. Too late I noticed the #501374 and there is an easier solution. Thank you PhobosK. Following ebuild patch solves this issue. --- bino-1.4.2-r1.ebuild +++ bino-1.4.2-r1.ebuild @@ -54,7 +54,7 @@ --without-equalizer --htmldir=/usr/share/doc/${PF}/html ) - use video_cards_nvidia && append-cppflags "-I/usr/include/NVCtrl" && append-ldflags "-I/usr/$(get_libdir)" && append-libs "Xext" + use video_cards_nvidia && append-cppflags "-I/usr/include/NVCtrl" && append-ldflags "-I/usr/$(get_libdir)" use lirc && append-cppflags "-I/usr/include/lirc" && append-libs "lirc_client" # Fix a compilation error because of a multiple definitions in glew The problem is still there. It do not compile. Which fix did you applied? 'bino-1.4.2-underlinking.patch v2' or '&& append-libs "Xext"'? Could you send the compilation error? bino-1.4.4 is in the tree now. I built it succesfully with VIDEO_CARDS="nvidia". If someone can confirm this, we can resolve this bug. 1.6 in the tree, closing due to no response from user |