Your message dated Tue, 18 Feb 2020 15:25:56 +0100
with message-id <c820f73e-86e9-585b-75a7-eb0663cf0...@debian.org>
and subject line interface flags must match (Re: Bug#951474: libfmt-dev: spdlog
try to load fmt v5 function())
has caused the Debian Bug report #951474,
regarding libfmt-dev: spdlog try to load fmt v5 function()
to be marked as done.
This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.
(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact ow...@bugs.debian.org
immediately.)
--
951474: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=951474
Debian Bug Tracking System
Contact ow...@bugs.debian.org with problems
--- Begin Message ---
Package: libfmt-dev
Version: 5.3.0+ds-2
Severity: grave
Dear Maintainer,
Note : This bug is for armel, armhf, arm64 and powerpc arches.
As said in bug #950857 spdlog is build using an embedded copy of version 6+
and thus fail to load include from version 5.
/usr/bin/ld: CMakeFiles/gerbera.dir/src/main.cc.o: in function `void
spdlog::logger::log<char [38], (char (*) [38])0>(spdlog::source_loc,
spdlog::level::level_enum, char const (&) [38])':
/usr/include/spdlog/logger.h:154: undefined reference to
`spdlog::details::log_msg::log_msg(spdlog::source_loc,
fmt::v5::basic_string_view<char>, spdlog::level::level_enum,
fmt::v5::basic_string_view<char>)'
/usr/bin/ld: CMakeFiles/gerbera.dir/src/main.cc.o: in function `void
spdlog::logger::log<char [51], (char (*) [51])0>(spdlog::source_loc,
spdlog::level::level_enum, char const (&) [51])':
/usr/include/spdlog/logger.h:154: undefined reference to
`spdlog::details::log_msg::log_msg(spdlog::source_loc,
fmt::v5::basic_string_view<char>, spdlog::level::level_enum,
fmt::v5::basic_string_view<char>)'
/usr/bin/ld: CMakeFiles/gerbera.dir/src/main.cc.o: in function `void
spdlog::logger::log<char [40], (char (*) [40])0>(spdlog::source_loc,
spdlog::level::level_enum, char const (&) [40])':
/usr/include/spdlog/logger.h:154: undefined reference to
`spdlog::details::log_msg::log_msg(spdlog::source_loc,
fmt::v5::basic_string_view<char>, spdlog::level::level_enum,
fmt::v5::basic_string_view<char>)'
/usr/bin/ld: CMakeFiles/gerbera.dir/src/main.cc.o: in function `void
spdlog::logger::log<char [80], (char (*) [80])0>(spdlog::source_loc,
spdlog::level::level_enum, char const (&) [80])':
/usr/include/spdlog/logger.h:154: undefined reference to
`spdlog::details::log_msg::log_msg(spdlog::source_loc,
fmt::v5::basic_string_view<char>, spdlog::level::level_enum,
fmt::v5::basic_string_view<char>)'
/usr/bin/ld: CMakeFiles/gerbera.dir/src/main.cc.o: in function `void
spdlog::logger::log<char [35], (char (*) [35])0>(spdlog::source_loc,
spdlog::level::level_enum, char const (&) [35])':
/usr/include/spdlog/logger.h:154: undefined reference to
`spdlog::details::log_msg::log_msg(spdlog::source_loc,
fmt::v5::basic_string_view<char>, spdlog::level::level_enum,
fmt::v5::basic_string_view<char>)'
/usr/bin/ld:
CMakeFiles/gerbera.dir/src/main.cc.o:/usr/include/spdlog/logger.h:154: more
undefined references to `spdlog::details::log_msg::log_msg(spdlog::source_loc,
fmt::v5::basic_string_view<char>, spdlog::level::level_enum,
fmt::v5::basic_string_view<char>)' follow
collect2: error: ld returned 1 exit status
Christian
-- System Information:
Debian Release: bullseye/sid
APT prefers buildd-unstable
APT policy: (500, 'buildd-unstable'), (500, 'unstable')
Architecture: amd64 (x86_64)
Foreign Architectures: i386
Kernel: Linux 5.4.20 (SMP w/8 CPU cores)
Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_OOT_MODULE
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8),
LANGUAGE=fr_FR.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
Versions of packages libfmt-dev depends on:
ii libc6 2.29-10
ii libgcc-s1 [libgcc1] 10-20200211-1
ii libgcc1 1:10-20200211-1
ii libstdc++6 10-20200211-1
libfmt-dev recommends no packages.
Versions of packages libfmt-dev suggests:
pn libfmt-doc <none>
-- no debconf information
--- End Message ---
--- Begin Message ---
Hello,
Christian Marillat kirjoitti 18.2.2020 klo 14.29:
>> I'd need more details to reproduce and understand the problem, particularly
>> whether
>> packaged libfmt v5 is a root case or not.
>>
[...]
> From my own repository :
>
> https://www.deb-multimedia.org/pool/main/g/gerbera-dmo/gerbera-dmo_1.4.0+20200216.gitb93113f2-dmo1.debian.tar.xz
> https://www.deb-multimedia.org/pool/main/g/gerbera-dmo/gerbera-dmo_1.4.0+20200216.gitb93113f2-dmo1.dsc
> https://www.deb-multimedia.org/pool/main/g/gerbera-dmo/gerbera-dmo_1.4.0+20200216.gitb93113f2.orig.tar.xz
Thank you for providing sources.
The likely cause of your issue is that CMakeLists.txt:327 override interface
flags for spdlog. This is dangerous
since it causes the public headers of spdlog to be different from what they
looked like when spdlog itself
was compiled. Crashes or linking errors are common consequences of doing that.
In spdlog's own CMakeLists.txt:69-72 it correctly conditionally exports the
flag so libraries using the target
will use same flags, and so client code doesn't need to do anything else than
linking to the target. If the line
327 (above) was initially introduced as a workaround, it can be now dropped.
Regards,
--
Eugene V. Lyubimkin aka JackYF
C++ GNU/Linux userspace developer, Debian Developer
--- End Message ---