Bug#795813: kodi: FTBFS with g++-5: multiple definitions of argument-parsing stuff
Simon McVittie
smcv at debian.org
Mon Aug 17 07:31:52 UTC 2015
Source: kodi
Version: 14.2+dfsg1-2
Severity: serious
Justification: fails to build from source (but built successfully in the past)
Tags: patch
kodi fails to build from source when binNMU'd for the libstdc++ transitions:
<https://buildd.debian.org/status/package.php?p=kodi>
There are lots of errors like this:
../../lib/libmisc.a(argp-parse.o): In function `argp_usage':
/«BUILDDIR»/kodi-14.2+dfsg1/xbmc/screensavers/rsxs-0.9/lib/argp.h:568: multiple definition of `argp_usage'
../../lib/libmisc.a(argp-help.o):/«BUILDDIR»/kodi-14.2+dfsg1/xbmc/screensavers/rsxs-0.9/lib/argp.h:568: first defined here
../../lib/libmisc.a(argp-parse.o): In function `_option_is_short':
/«BUILDDIR»/kodi-14.2+dfsg1/xbmc/screensavers/rsxs-0.9/lib/argp.h:574: multiple definition of `_option_is_short'
../../lib/libmisc.a(argp-help.o):/«BUILDDIR»/kodi-14.2+dfsg1/xbmc/screensavers/rsxs-0.9/lib/argp.h:574: first defined here
I believe this is because g++-5 changed the default interpretation of
"inline T foo() { ... }" from historical GNU behaviour to Standard C++.
<https://gcc.gnu.org/gcc-5/changes.html>
In Ubuntu, Matthias Klose patched kodi to use historical GNU inline
semantics <http://patches.ubuntu.com/k/kodi/kodi_14.2+dfsg1-2ubuntu1.patch>:
diff -pruN 14.2+dfsg1-2/debian/rules 14.2+dfsg1-2ubuntu1/debian/rules
--- 14.2+dfsg1-2/debian/rules 2015-06-04 08:33:30.000000000 +0000
+++ 14.2+dfsg1-2ubuntu1/debian/rules 2015-08-10 19:42:58.000000000 +0000
@@ -37,6 +37,7 @@ DEB_CFLAGS ?= $(shell dpkg-buildflags -
DEB_CXXFLAGS ?= $(shell dpkg-buildflags --get CPPFLAGS) \
$(filter-out -g -O2, $(shell dpkg-buildflags --get CXXFLAGS))
DEB_LDFLAGS ?= $(shell dpkg-buildflags --get LDFLAGS) $(shell pkg-config --libs ftgl)
+DEB_CFLAGS += -fgnu89-inline
ENV_OPTIONS = CFLAGS="$(DEB_CFLAGS)" CXXFLAGS="$(DEB_CXXFLAGS)" \
LDFLAGS="$(DEB_LDFLAGS)"
This is probably an appropriate change for kodi in Debian too.
Regards,
S
More information about the pkg-multimedia-maintainers
mailing list