Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
KODI does not compile with gcc-5.3.0 [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
DawgG
l33t
l33t


Joined: 17 Sep 2003
Posts: 866

PostPosted: Wed Dec 16, 2015 2:38 pm    Post subject: KODI does not compile with gcc-5.3.0 [SOLVED] Reply with quote

== UPDATE ==
kodi compiles now, only libcec does not (see below)
== == ==

on my kodi ~amd64-system i recently emerged gcc-5.3.0 and started using it right away.
i managed to solve some troubles when re-emerging kodi (in addition to having to re-emerge all cxx-related pkgs)
these are my USEFLAGS:
Code:
media-tv/kodi-15.2::gentoo  USE="X alsa bluray cec css dbus fishbmc goom opengl projectm rsxs rtmp spectrum texturepacker udisks upnp upower usb vaapi vdpau waveform webserver -airplay -avahi -bluetooth -caps -debug -gles -java -joystick -midi -mysql -nfs -profile -pulseaudio -samba -sftp {-test}" PYTHON_TARGETS="python2_7"

here is a list of all pkgs i had to re-emerge while trying to make kodi compile:
llvm
mesa
boost
cmake
tinyxml
libxml2
taglib
(and also qpdf and cups-filters, but these only because the netflixbmc-plugin required google-chrome which in turn requires these)
just to make sure i also re-emerged python-2.7.

but i do not know how to solve this last error:

Code:
make[1]: Leaving directory '/var/tmp/portage/media-tv/kodi-15.2/work/xbmc-15.2-Isengard/xbmc/guilib'
x86_64-pc-linux-gnu-g++ -DNDEBUG=1 -march=native -O2 -pipe -fPIC -DPIC -D_REENTRANT -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -std=gnu++11 -DNDEBUG=1 -march=native -O2 -pipe -fPIC -DPIC -D_REENTRANT -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -std=gnu++11 -Wl,-O1 -Wl,--as-needed -Wl,-O1 -Wl,--as-needed -o kodi.bin xbmc/main/main.a -Wl,--start-group xbmc/main/main.a xbmc/linux/linux.a xbmc/network/network.a xbmc/video/windows/videowindows.a xbmc/utils/utils.a xbmc/cores/DllLoader/exports/util/exports_utils.a xbmc/cores/DllLoader/exports/exports.a xbmc/settings/settings.a xbmc/video/video.a xbmc/pvr/addons/pvraddons.a xbmc/pvr/windows/pvrwindows.a xbmc/guilib/guilib.a  xbmc/cores/dvdplayer/DVDPlayer.a xbmc/cores/dvdplayer/DVDCodecs/DVDCodecs.a xbmc/cores/dvdplayer/DVDCodecs/Audio/Audio.a xbmc/cores/dvdplayer/DVDCodecs/Overlay/Overlay.a xbmc/cores/dvdplayer/DVDCodecs/Video/Video.a xbmc/cores/dvdplayer/DVDDemuxers/DVDDemuxers.a xbmc/cores/dvdplayer/DVDInputStreams/DVDInputStreams.a xbmc/cores/dvdplayer/DVDSubtitles/DVDSubtitles.a lib/SlingboxLib/SlingboxLib.a xbmc/addons/addons.a xbmc/cdrip/cdrip.a xbmc/contrib/kissfft/kissfft.a xbmc/cores/AudioEngine/audioengine.a xbmc/cores/DllLoader/dllloader.a xbmc/cores/ExternalPlayer/ExternalPlayer.a xbmc/cores/VideoRenderers/VideoRenderer.a xbmc/cores/VideoRenderers/VideoShaders/VideoShaders.a xbmc/cores/cores.a xbmc/cores/paplayer/paplayer.a xbmc/cores/playercorefactory/playercorefactory.a xbmc/dbwrappers/dbwrappers.a xbmc/dialogs/dialogs.a xbmc/epg/epg.a xbmc/filesystem/MusicDatabaseDirectory/musicdatabasedirectory.a xbmc/filesystem/VideoDatabaseDirectory/videodatabasedirectory.a xbmc/filesystem/filesystem.a xbmc/input/input.a xbmc/interfaces/generic/interfaces-generic.a xbmc/interfaces/info/info.a xbmc/interfaces/interfaces.a xbmc/interfaces/json-rpc/json-rpc.a xbmc/interfaces/legacy/legacy.a xbmc/interfaces/python/python_binding.a xbmc/listproviders/listproviders.a xbmc/media/media.a xbmc/music/dialogs/musicdialogs.a xbmc/music/infoscanner/musicscanner.a xbmc/music/karaoke/karaoke.a xbmc/music/music.a xbmc/music/tags/musictags.a xbmc/music/windows/musicwindows.a xbmc/network/websocket/websocket.a xbmc/peripherals/bus/peripheral-bus.a xbmc/peripherals/devices/peripheral-devices.a xbmc/peripherals/dialogs/peripheral-dialogs.a xbmc/peripherals/peripherals.a xbmc/pictures/pictures.a xbmc/playlists/playlists.a xbmc/powermanagement/powermanagement.a xbmc/profiles/profiles.a xbmc/profiles/dialogs/profiles_dialogs.a xbmc/profiles/windows/profiles_windows.a xbmc/programs/programs.a xbmc/pvr/channels/pvrchannels.a xbmc/pvr/dialogs/pvrdialogs.a xbmc/pvr/pvr.a xbmc/pvr/recordings/pvrrecordings.a xbmc/pvr/timers/pvrtimers.a xbmc/rendering/rendering.a xbmc/settings/dialogs/settings_dialogs.a xbmc/settings/lib/settings_lib.a xbmc/settings/windows/settings_windows.a xbmc/storage/storage.a xbmc/video/dialogs/videodialogs.a xbmc/video/jobs/video-jobs.a xbmc/video/videosync/videosync.a xbmc/view/view.a xbmc/windowing/windowing.a xbmc/windows/windows.a xbmc/xbmc.a xbmc/interfaces/legacy/wsgi/legacy-wsgi.a xbmc/network/httprequesthandler/httprequesthandlers.a xbmc/network/httprequesthandler/python/httprequesthandlers-python.a xbmc/rendering/gl/rendering_gl.a lib/libUPnP/libupnp.a xbmc/network/upnp/upnp.a xbmc/input/linux/input_linux.a xbmc/network/linux/network_linux.a xbmc/powermanagement/linux/powermanagement_linux.a xbmc/storage/linux/storage_linux.a xbmc/windowing/X11/windowing_X11.a lib/UnrarXLib/UnrarXLib.a -Wl,--end-group xbmc/threads/threads.a xbmc/commons/commons.a -lmicrohttpd -ljasper -lresolv -ltinyxml -lssl -lcrypto -lz -llzo2 -lpthread -ltiff -ljpeg -lbz2 -lgcrypt -lgpg-error -lGLU -lGLEW -lGL  -L/usr/lib64 -lpython2.7 -lyajl -lxml2 -lxslt -lxml2 -lz -lm -ldl -lm -lxml2 -lfribidi -lglib-2.0 -lsqlite3 -lpng16 -lpcrecpp -lpcre -lfreetype -ltag -lcdio -lm -lasound -ldbus-1 -lasound -lX11 -lXext -lXrandr -ldrm -lXt -lX11 -lXmu -lXt -lX11 -ludev -lavcodec -lavfilter -lavformat -lavutil -lpostproc -lswscale -lswresample -lva-x11 -lva -L/var/tmp/portage/media-tv/kodi-15.2/work/xbmc-15.2-Isengard/tools/depends/native/libsquish-native/squish-install/lib -lsquish -rdynamic
xbmc/filesystem/filesystem.a(FTPParse.o): In function `CFTPParse::setTime(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)':
FTPParse.cpp:(.text+0x5b1): undefined reference to `pcrecpp::RE::Init(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, pcrecpp::RE_Options const*)'
FTPParse.cpp:(.text+0x648): undefined reference to `pcrecpp::RE::Init(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, pcrecpp::RE_Options const*)'
FTPParse.cpp:(.text+0x6df): undefined reference to `pcrecpp::RE::Init(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, pcrecpp::RE_Options const*)'
FTPParse.cpp:(.text+0x861): undefined reference to `pcrecpp::RE::Init(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, pcrecpp::RE_Options const*)'
FTPParse.cpp:(.text+0x9cd): undefined reference to `pcrecpp::RE::Init(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, pcrecpp::RE_Options const*)'
xbmc/filesystem/filesystem.a(FTPParse.o):FTPParse.cpp:(.text+0xc72): more undefined references to `pcrecpp::RE::Init(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, pcrecpp::RE_Options const*)' follow
collect2: error: ld returned 1 exit status


how can i make kodi compile?
THX for your help!
_________________
DUMM KLICKT GUT.


Last edited by DawgG on Thu Dec 17, 2015 3:41 pm; edited 1 time in total
Back to top
View user's profile Send private message
Mistwolf
Apprentice
Apprentice


Joined: 07 Mar 2007
Posts: 189
Location: Edmonton, AB

PostPosted: Wed Dec 16, 2015 6:53 pm    Post subject: Reply with quote

did you ran revdep-rebuild on libstdc++ as the ebuild and news items mentioned?
Back to top
View user's profile Send private message
NeddySeagoon
Administrator
Administrator


Joined: 05 Jul 2003
Posts: 54308
Location: 56N 3W

PostPosted: Wed Dec 16, 2015 7:58 pm    Post subject: Reply with quote

DawgG,

The C++11 ABI changed between gcc-4.x and gcc-5.x

You need to rebuild all your packages using C++11 to move to the new ABI.
Its overkill to rebuild everything.
_________________
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Back to top
View user's profile Send private message
DawgG
l33t
l33t


Joined: 17 Sep 2003
Posts: 866

PostPosted: Wed Dec 16, 2015 10:20 pm    Post subject: Reply with quote

THX for your replies.
yes, i ran revdep-rebuild but it turned up nothing.
i rebuilt every pkg that seemed (to me) related to c++ (either having a useflag cxx or a name/category with cpp in it, but the error i posted is still there.
now the box is running
Code:
emerge -e kodi
which i know is overkill and i will kill it soon because the
Code:
revdep-rebuild -pvv --library 'libstdc\+\+\.so\.6' -- --exclude gcc
from the news-item turned up quite a lot of other pkgs that need to be re-emerged.
should have read that news-item earlier but i was operating the box remotely.
if kodi still does not compile i will post again, if it does i'll mark it solved.
THX!
_________________
DUMM KLICKT GUT.
Back to top
View user's profile Send private message
DawgG
l33t
l33t


Joined: 17 Sep 2003
Posts: 866

PostPosted: Thu Dec 17, 2015 10:07 am    Post subject: kodi runs but libcec fails Reply with quote

i killed
Code:
emerge -e kodi
at 260 of 332 pkgs.

Code:
revdep-rebuild -pvv --library 'libstdc\+\+\.so\.6' -- --exclude gcc

told me to emerge the following pkgs:

Code:
emerge --exclude=gcc --ask --quiet app-arch/unrar:0 app-text/openjade:0 app-text/opensp:0 app-text/poppler:0/57 app-text
/qpdf:0/13 dev-lang/spidermonkey:17 dev-lang/spidermonkey:0/mozjs185 dev-lang/swig:0 dev-libs/boost:0/1.57.0 dev-libs/DirectFB:0 dev-libs
/elfutils:0 dev-libs/gmp:0/10.4 dev-libs/jsoncpp:0/1 dev-libs/libcdio:0/15 dev-libs/libcec:0 dev-libs/libebml:0/4 dev-libs/libpcre:3 dev-
libs/tinyxml:0 dev-util/cmake:0 dev-util/gperf:0 dev-util/ninja:0 dev-util/re2c:0 media-libs/audiofile:0/1 media-libs/chromaprint:0 media
-libs/flac:0 media-libs/ftgl:0 media-libs/game-music-emu:0 media-libs/glu:0 media-libs/libcaca:0 media-libs/libmatroska:0/6 media-libs/li
bmodplug:0 media-libs/libmp4v2:0 media-libs/libprojectm:0 media-libs/libvpx:0/3 media-libs/mesa:0 media-libs/portaudio:0 media-libs/tagli
b:0 media-libs/tiff:0 media-libs/x265:0/68 media-plugins/live:0/7 media-tv/kodi:0 media-video/dirac:0 net-ftp/lftp:0 net-libs/gnutls:0 ne
t-libs/libproxy:0 net-print/cups-filters:0 sys-apps/groff:0 sys-apps/smartmontools:0 sys-block/thin-provisioning-tools:0 sys-devel/gcc:4.
9 sys-devel/gcc:5 sys-devel/gettext:0 sys-devel/llvm:0/3.7.0 sys-libs/ncurses:0/6 x11-misc/vdpauinfo:0 x11-wm/fluxbox:0


but emerge changed the order of the list which failed at 44 of 54: dev-libs/libcec-3.0.1.

after that kodi did compile and runs now, though.

compilation of dev-libs/libcec-3.0.1 fails with the following error:
Code:
[100%] Linking CXX executable cec-client
cd /var/tmp/portage/dev-libs/libcec-3.0.1/work/libcec-3.0.1_build/src/cec-client && /usr/bin/cmake -E cmake_link_script CMakeFiles/cec-client.dir/link.txt --verbose=1
/usr/bin/x86_64-pc-linux-gnu-g++   -march=native -O2 -pipe  -std=c++11   -Wl,-O1 -Wl,--as-needed CMakeFiles/cec-client.dir/cec-client.cpp.o CMakeFiles/cec-client.dir/curses/CursesControl.cpp.o  -o cec-client-3.0.1 -rdynamic -L/usr/lib64 -lplatform -lpthread -lpthread -ldl -lcurses -lrt
CMakeFiles/cec-client.dir/cec-client.cpp.o: In function `PrintToStdOut(char const*, ...)':
cec-client.cpp:(.text+0x217): undefined reference to `StringUtils::FormatV[abi:cxx11](char const*, __va_list_tag*)'
CMakeFiles/cec-client.dir/cec-client.cpp.o: In function `CecLogMessage(void*, CEC::cec_log_message)':
cec-client.cpp:(.text+0x4c0): undefined reference to `StringUtils::Format[abi:cxx11](char const*, ...)'
CMakeFiles/cec-client.dir/cec-client.cpp.o: In function `ListDevices(CEC::ICECAdapter*)':
cec-client.cpp:(.text+0x13fe): undefined reference to `StringUtils::Format[abi:cxx11](char const*, ...)'
cec-client.cpp:(.text+0x1582): undefined reference to `StringUtils::Format[abi:cxx11](char const*, ...)'
cec-client.cpp:(.text+0x15c1): undefined reference to `StringUtils::Left(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned long)'
CMakeFiles/cec-client.dir/cec-client.cpp.o: In function `ProcessCommandSELF(CEC::ICECAdapter*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&)':
cec-client.cpp:(.text+0x3b55): undefined reference to `StringUtils::Format[abi:cxx11](char const*, ...)'
CMakeFiles/cec-client.dir/cec-client.cpp.o: In function `ProcessCommandLANG(CEC::ICECAdapter*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&)':
cec-client.cpp:(.text+0x526c): undefined reference to `StringUtils::Format[abi:cxx11](char const*, ...)'
CMakeFiles/cec-client.dir/cec-client.cpp.o: In function `ProcessCommandSCAN(CEC::ICECAdapter*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&)':
cec-client.cpp:(.text+0x5dd4): undefined reference to `StringUtils::Format[abi:cxx11](char const*, ...)'
cec-client.cpp:(.text+0x5e3c): undefined reference to `StringUtils::Format[abi:cxx11](char const*, ...)'
cec-client.cpp:(.text+0x5e8c): undefined reference to `StringUtils::Format[abi:cxx11](char const*, ...)'
CMakeFiles/cec-client.dir/cec-client.cpp.o:cec-client.cpp:(.text+0x5ee5): more undefined references to `StringUtils::Format[abi:cxx11](char const*, ...)' follow
collect2: Fehler: ld gab 1 als Ende-Status zur<FC>ck
src/cec-client/CMakeFiles/cec-client.dir/build.make:120: die Regel f<FC>r Ziel <BB>src/cec-client/cec-client-3.0.1<AB> scheiterte
make[2]: *** [src/cec-client/cec-client-3.0.1] Fehler 1
make[2]: Verzeichnis <BB>/var/tmp/portage/dev-libs/libcec-3.0.1/work/libcec-3.0.1_build<AB> wird verlassen
CMakeFiles/Makefile2:85: die Regel f<FC>r Ziel <BB>src/cec-client/CMakeFiles/cec-client.dir/all<AB> scheiterte
make[1]: *** [src/cec-client/CMakeFiles/cec-client.dir/all] Fehler 2
make[1]: Verzeichnis <BB>/var/tmp/portage/dev-libs/libcec-3.0.1/work/libcec-3.0.1_build<AB> wird verlassen
Makefile:127: die Regel f<FC>r Ziel <BB>all<AB> scheiterte
make: *** [all] Fehler 2

and when the cec-adapter is connected kodi just crashes (or refuses to start when it is connected before.)

i'll compile the rest of the list and maybe gcc-4 and gcc-5 after that (which was in the rebuild-list in spite of --exclude gcc)
_________________
DUMM KLICKT GUT.
Back to top
View user's profile Send private message
DawgG
l33t
l33t


Joined: 17 Sep 2003
Posts: 866

PostPosted: Thu Dec 17, 2015 3:40 pm    Post subject: KODI compiles, libcec still doesn't Reply with quote

i recompiled gcc-5 (but not gcc-4) and cmake (just to make sure) but libcec still fails with the same error (the rest is OK).
so i manually compiled libcec from git and the issue's solved now.
_________________
DUMM KLICKT GUT.
Back to top
View user's profile Send private message
DawgG
l33t
l33t


Joined: 17 Sep 2003
Posts: 866

PostPosted: Mon Jan 11, 2016 1:27 pm    Post subject: Reply with quote

just a follow-up:
even though libcec comiled the way monetioned above, it did not work.
i first had to emerge libplatform (ususally a dep of libcec) and then libcec - now it works!
_________________
DUMM KLICKT GUT.
Back to top
View user's profile Send private message
gerdesj
l33t
l33t


Joined: 29 Sep 2005
Posts: 621
Location: Yeovil, Somerset, UK

PostPosted: Fri Jan 15, 2016 8:32 pm    Post subject: Reply with quote

DawgG wrote:
just a follow-up:
even though libcec comiled the way monetioned above, it did not work.
i first had to emerge libplatform (ususally a dep of libcec) and then libcec - now it works!


Thank you. This had been driving me mad. I had already run several rebuilds of all C++ stuff via revdep-rebuild but it kept failing on libcec. I already had libplatform installed, rebuilt it and now libcec finally linked.

Again, thanks for the tip 8)
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