Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
VLC won't compile (SOLVED)
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Multimedia
View previous topic :: View next topic  
Author Message
andrewwalker27
l33t
l33t


Joined: 27 Jun 2005
Posts: 614

PostPosted: Thu Feb 15, 2018 9:49 pm    Post subject: VLC won't compile (SOLVED) Reply with quote

I'm trying to install vlc but the compile stage seems to fail. As far as I can tell, the problem seems to be something to do with matroska but it still fails even with -matroska flag set so I don't really understand it. Here's the start of the error
Code:
nst&() const'
demux/mkv/.libs/libmkv_plugin_la-matroska_segment_parse.o: In function `matroska_segment_c::ParseChapterAtom(int, libmatroska::KaxChapterAtom*, chapter_item_c&)::ChapterAtomHandlers::KaxChapterLanguage_callback(libebml::EbmlElement*, void*)':
matroska_segment_parse.cpp:(.text+0x1625): undefined reference to `libebml::EbmlString::operator std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&() const'
demux/mkv/.libs/libmkv_plugin_la-matroska_segment_parse.o: In function `matroska_segment_c::ParseChapterAtom(int, libmatroska::KaxChapterAtom*, chapter_item_c&)::ChapterAtomHandlers::KaxChapterCountry_callback(libebml::EbmlElement*, void*)':
matroska_segment_parse.cpp:(.text+0x1645): undefined reference to `libebml::EbmlString::operator std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&() const'
demux/mkv/.libs/libmkv_plugin_la-matroska_segment_parse.o: In function `matroska_segment_c::ParseTrackEntry(libmatroska::KaxTrackEntry const*)::MetaDataHandlers::KaxTrackLanguage_callback(libebml::EbmlElement*, void*)':
matroska_segment_parse.cpp:(.text+0x2a50): undefined reference to `libebml::EbmlString::operator std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&() const'
demux/mkv/.libs/libmkv_plugin_la-matroska_segment_parse.o: In function `matroska_segment_c::ParseTrackEntry(libmatroska::KaxTrackEntry const*)::MetaDataHandlers::KaxCodecID_callback(libebml::EbmlElement*, void*)':
matroska_segment_parse.cpp:(.text+0x2b48): undefined reference to `libebml::EbmlString::operator std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&() const'
demux/mkv/.libs/libmkv_plugin_la-matroska_segment_parse.o:matroska_segment_parse.cpp:(.text+0x2bd2): more undefined references to `libebml::EbmlString::operator std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&() const' follow
collect2: error: ld returned 1 exit status
make[4]: *** [Makefile:15219: libmkv_plugin.la] Error 1
make[4]: *** Waiting for unfinished jobs....

then finally coughs and dies with this
Code:
oc.o gui/qt/util/.libs/libqt_plugin_la-timetooltip.moc.o gui/qt/util/.libs/libqt_plugin_la-customwidgets.moc.o gui/qt/util/.libs/libqt_plugin_la-searchlineedit.moc.o gui/qt/util/.libs/libqt_plugin_la-qmenuview.moc.o gui/qt/util/.libs/libqt_plugin_la-qvlcapp.moc.o gui/qt/util/.libs/libqt_plugin_la-pictureflow.moc.o gui/qt/util/.libs/libqt_plugin_la-validators.moc.o gui/qt/util/buttons/.libs/libqt_plugin_la-RoundButton.moc.o gui/qt/util/buttons/.libs/libqt_plugin_la-DeckButtonsLayout.moc.o gui/qt/util/buttons/.libs/libqt_plugin_la-BrowseButton.moc.o gui/qt/styles/.libs/libqt_plugin_la-seekstyle.moc.o gui/qt/.libs/libqt_plugin_la-resources.o   -Wl,-rpath -Wl,/var/tmp/portage/media-video/vlc-3.0.0-r1/work/vlc-3.0.0/src/.libs ../compat/.libs/libcompat.a -L/usr/lib64/sidplay/builders/ ../src/.libs/libvlccore.so -lidn -lpthread -ldl -ldbus-1 -Wl,--as-needed -lQt5Svg -lQt5Widgets -lQt5X11Extras -lQt5Gui -lQt5Core -lX11 -L/usr/lib/gcc/x86_64-pc-linux-gnu/7.3.0 -L/usr/lib/gcc/x86_64-pc-linux-gnu/7.3.0/../../../../lib64 -L/lib/../lib64 -L/usr/lib/../lib64 -L/usr/lib/gcc/x86_64-pc-linux-gnu/7.3.0/../../../../x86_64-pc-linux-gnu/lib -L/usr/lib/gcc/x86_64-pc-linux-gnu/7.3.0/../../.. -lstdc++ -lm -lc -lgcc_s /usr/lib/gcc/x86_64-pc-linux-gnu/7.3.0/crtendS.o /usr/lib/gcc/x86_64-pc-linux-gnu/7.3.0/../../../../lib64/crtn.o  -march=amdfam10 -O2 -Wl,-O1 -Wl,-z -Wl,defs   -Wl,-soname -Wl,libqt_plugin.so -Wl,-retain-symbols-file -Wl,.libs/libqt_plugin.exp -o .libs/libqt_plugin.so
libtool: link: ( cd ".libs" && rm -f "libqt_plugin.la" && ln -s "../libqt_plugin.la" "libqt_plugin.la" )
make[4]: Leaving directory '/var/tmp/portage/media-video/vlc-3.0.0-r1/work/vlc-3.0.0/modules'
make[3]: *** [Makefile:26104: all-recursive] Error 1
make[3]: Leaving directory '/var/tmp/portage/media-video/vlc-3.0.0-r1/work/vlc-3.0.0/modules'
make[2]: *** [Makefile:11217: all] Error 2
make[2]: Leaving directory '/var/tmp/portage/media-video/vlc-3.0.0-r1/work/vlc-3.0.0/modules'
make[1]: *** [Makefile:1529: all-recursive] Error 1
make[1]: Leaving directory '/var/tmp/portage/media-video/vlc-3.0.0-r1/work/vlc-3.0.0'
make: *** [Makefile:1414: all] Error 2
 * ERROR: media-video/vlc-3.0.0-r1::gentoo failed (compile phase):
 *   emake failed

The version I'm trying to install is media-video/vlc-3.0.0-r1 but there is no relevant bug reported so I'm wondering if it's just me, or is anyone else is experiencing the same error?
Code:
Calculating dependencies... done!
[ebuild  r  U  ] media-video/vlc-3.0.0-r1:0/5-9::gentoo [2.2.8-r1:0/5-8::gentoo] USE="X a52 alsa avcodec avformat cddb dbus dts dvb dvbpsi dvd encode ffmpeg flac fontconfig gcrypt jpeg libnotify libsamplerate lirc mp3 mpeg ncurses ogg opengl png pulseaudio qt5 samba svg swscale truetype udev v4l vaapi vdpau vorbis x264 xcb xml xv zeroconf -aalib (-altivec) (-aom) -archive% -bidi -bluray -chromaprint -chromecast% -dc1394 -debug (-directx) (-dxva2) -faad -fdk -fluidsynth -gme -gnome-keyring% -gnutls -gstreamer -ieee1394 -jack -kate -libass -libav -libcaca -libtar -libtiger -linsys -live -lua -macosx-notifications% (-macosx-qtkit) -matroska* -modplug -mtp -musepack (-neon) -nfs% -omxil -opencv -optimisememory -opus -postproc -projectm -rdp -rtsp -run-as-root -schroedinger -sdl-image -sftp -shout -sid -skins -speex -taglib {-test} -theora -tremor -twolame -upnp -vcd% -vlm -vnc -vpx -wayland% -wma-fixed -x265 -zvbi (-atmo%) (-audioqueue%) (-cdda%*) (-gnome%*) (-growl%) (-httpd%) (-macosx-dialog-provider%) (-macosx-eyetv%) (-macosx-quartztext%) (-sdl%*) (-vcdx%)" CPU_FLAGS_X86="mmx sse" 0 KiB


I'm using x86_64-pc-linux-gnu-7.3.0 but if more info would be useful then let me know and I'll post it.
Thanks in advance for any help or suggestions.


Last edited by andrewwalker27 on Thu Feb 15, 2018 11:58 pm; edited 1 time in total
Back to top
View user's profile Send private message
asturm
Developer
Developer


Joined: 05 Apr 2007
Posts: 6374
Location: Austria

PostPosted: Thu Feb 15, 2018 10:04 pm    Post subject: Reply with quote

rebuild libeml, gcc ABI break issue.
_________________
backend.cpp:92:2: warning: #warning TODO - this error message is about as useful as a cooling unit in the arctic
Back to top
View user's profile Send private message
andrewwalker27
l33t
l33t


Joined: 27 Jun 2005
Posts: 614

PostPosted: Thu Feb 15, 2018 11:58 pm    Post subject: Reply with quote

Many thanks, that worked!
For anyone else experiencing this
Code:

emerge -1 libebml

cured it.
Back to top
View user's profile Send private message
vespaman
Guru
Guru


Joined: 28 Aug 2002
Posts: 304
Location: Stockholm, Sweden

PostPosted: Fri Jun 15, 2018 2:13 pm    Post subject: Reply with quote

Thx!

Solved my issue as well!
Back to top
View user's profile Send private message
figueroa
Guru
Guru


Joined: 14 Aug 2005
Posts: 350
Location: GA-USA

PostPosted: Wed Jul 04, 2018 4:22 pm    Post subject: Reply with quote

Yes, that's still the case. I had to re-emerge dev-libs/libebml to successfully update to media-video/vlc-3.0.3-r1 with new sys-devel/gcc-7.3.0-r3 on a 32 bit system.
_________________
Andy Figueroa
andy@andyfigueroa.net Working with Unix since 1983.
Back to top
View user's profile Send private message
asturm
Developer
Developer


Joined: 05 Apr 2007
Posts: 6374
Location: Austria

PostPosted: Wed Jul 04, 2018 5:41 pm    Post subject: Reply with quote

What do you mean it is still a problem? Did you have to rebuild libebml for a second time on the same system?
_________________
backend.cpp:92:2: warning: #warning TODO - this error message is about as useful as a cooling unit in the arctic
Back to top
View user's profile Send private message
figueroa
Guru
Guru


Joined: 14 Aug 2005
Posts: 350
Location: GA-USA

PostPosted: Wed Jul 04, 2018 6:08 pm    Post subject: Reply with quote

For 32 bit x86, vlc-3.0.3-r1 just became stable. I had not updated libebml since April, but did switch to gcc-7.3.0-r3 on June 20, the normal way without re-emerging everything. But, when updating to vlc-3.0.3-r1, compile failed. I then re-emerged libebml, after which vlc-3.0.3-r1 emerged without a problem.

Therefore, a stale libebml (compiled with gcc-6.4.0-r1 in my case) prevented vlc from updating (still a problem). That is in spite of the fact that we are told that the gcc ABI had not changed.

ADDED:

Note https://forums.gentoo.org/viewtopic-t-1083456-highlight-gcc+upgrade.html identifies another apparent ABI issue with the upgrade to gcc-7.3.0-r3.

ADDED FURTHER 7/10/2018:

Just happened on my main x86_64 box also.
_________________
Andy Figueroa
andy@andyfigueroa.net Working with Unix since 1983.


Last edited by figueroa on Tue Jul 10, 2018 9:54 pm; edited 1 time in total
Back to top
View user's profile Send private message
UlvHare
n00b
n00b


Joined: 09 Sep 2015
Posts: 3
Location: USSR

PostPosted: Tue Jul 10, 2018 10:05 am    Post subject: Reply with quote

Confirming. During today's update vlc-3.0.3-r1 compilation braked but re-emerging libebml (also was compiled by old gcc) solved the problem. Thanks for advice!
Back to top
View user's profile Send private message
samuelbernardo
n00b
n00b


Joined: 30 Jan 2016
Posts: 14

PostPosted: Thu Jul 12, 2018 9:36 pm    Post subject: Reply with quote

Same problem here and solved after recompilation, because of ABI breakage.
emerge -1 libebml

Does this mean that it's missing a dependency for libebml that should force a recompilation after the ABI update?
Back to top
View user's profile Send private message
cameta
Veteran
Veteran


Joined: 04 Aug 2004
Posts: 1133

PostPosted: Sat Jul 14, 2018 10:30 am    Post subject: Reply with quote

Code:
-linux-gnu/7.3.0/../../.. -lstdc++ -lm -lc -lgcc_s /usr/lib/gcc/x86_64-pc-linux-gnu/7.3.0/crtendS.o /usr/lib/gcc/x86_64-pc-linux-gnu/7.3.0/../../../../lib64/crtn.o  -march=native -O2 -Wl,-O1 -Wl,-z -Wl,defs   -Wl,-soname -Wl,libqt_plugin.so -Wl,-retain-symbols-file -Wl,.libs/libqt_plugin.exp -o .libs/libqt_plugin.so
libtool: link: ( cd ".libs" && rm -f "libqt_plugin.la" && ln -s "../libqt_plugin.la" "libqt_plugin.la" )
make[4]: Leaving directory '/var/tmp/portage/media-video/vlc-3.0.3-r1/work/vlc-3.0.3/modules'
make[3]: *** [Makefile:26145: all-recursive] Error 1
make[3]: Leaving directory '/var/tmp/portage/media-video/vlc-3.0.3-r1/work/vlc-3.0.3/modules'
make[2]: *** [Makefile:11238: all] Error 2
make[2]: Leaving directory '/var/tmp/portage/media-video/vlc-3.0.3-r1/work/vlc-3.0.3/modules'
make[1]: *** [Makefile:1530: all-recursive] Error 1
make[1]: Leaving directory '/var/tmp/portage/media-video/vlc-3.0.3-r1/work/vlc-3.0.3'
make: *** [Makefile:1415: all] Error 2
 * ERROR: media-video/vlc-3.0.3-r1::gentoo failed (compile phase):
 *   emake failed
 *
 * If you need support, post the output of `emerge --info '=media-video/vlc-3.0.3-r1::gentoo'`,
 * the complete build log and the output of `emerge -pqv '=media-video/vlc-3.0.3-r1::gentoo'`.
 * The complete build log is located at '/var/tmp/portage/media-video/vlc-3.0.3-r1/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/media-video/vlc-3.0.3-r1/temp/environment'.
 * Working directory: '/var/tmp/portage/media-video/vlc-3.0.3-r1/work/vlc-3.0.3'
 * S: '/var/tmp/portage/media-video/vlc-3.0.3-r1/work/vlc-3.0.3'

Same here. After recompiling liblm the problem has been solved. :D
_________________
Si algo falla LEE el jodido manual, Si sigue fallando LEE BIEN el jodido manual.
Back to top
View user's profile Send private message
mabap
n00b
n00b


Joined: 04 Feb 2005
Posts: 6

PostPosted: Sun Jul 29, 2018 4:21 pm    Post subject: Reply with quote

I can confirm that switching gcc from 6.4.0 (?) to 7.3.0 breaks vlc's emerge (more concrete: linking) against libebml.
Maybe add dev-libs/libebml to the "Which packages are known to need a rebuild?" section on https://wiki.gentoo.org/wiki/Upgrading_GCC. I didn't do the "Rebuilding everything" option there (it is summer and already warm enough in my work room ;-) but I guess most do resulting in the few error reports.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Multimedia All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum