[Pkg-xmpp-devel] Bug#1115142: spectrum2: FTBFS: /usr/bin/ld: /usr/lib/x86_64-linux-gnu/libjsoncpp.a(json_reader.cpp.o): relocation R_X86_64_PC32 against symbol `_ZTVN4Json17CharReaderBuilderE' can not be used when making a shared object; recompile with -fPIC

Adrian Bunk bunk at debian.org
Mon Nov 10 19:03:36 GMT 2025


On Sat, Sep 13, 2025 at 04:29:34PM +0000, Santiago Vila wrote:
> Package: src:spectrum2
> Version: 2.2.1+dfsg-2
> Severity: serious
> Tags: ftbfs forky sid
>...
> --------------------------------------------------------------------------------
> [...]
> [ 57%] Building CXX object libtransport/CMakeFiles/transport.dir/__/include/Swiften/TLS/TLSServerContext.cpp.o
> cd /<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/libtransport && /us [too-long-redacted] wiften/TLS/TLSServerContext.cpp
> [ 58%] Building CXX object libtransport/CMakeFiles/transport.dir/__/include/Swiften/TLS/TLSServerContextFactory.cpp.o
> cd /<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/libtransport && /us [too-long-redacted] TLS/TLSServerContextFactory.cpp
> [ 58%] Linking CXX shared library libtransport.so
> cd /<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/libtransport && /usr/bin/cmake -E cmake_link_script CMakeFiles/transport.dir/link.txt --verbose=1
> /usr/bin/c++ -fPIC -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>> [too-long-redacted] v' in read-only section `.text'
> /usr/bin/ld: /usr/lib/x86_64-linux-gnu/libjsoncpp.a(json_reader.cpp.o): relocation R_X86_64_PC32 against symbol `_ZTVN4Json17CharReaderBuilderE' can not be used when making a shared object; recompile with -fPIC
> /usr/bin/ld: final link failed: bad value
> collect2: error: ld returned 1 exit status
> StanzaRouter.cpp.o CMakeFiles/transport.dir/__/include/Swift [too-long-redacted] b/x86_64-linux-gnu/libjsoncpp.a
> make[3]: *** [libtransport/CMakeFiles/transport.dir/build.make:1111: libtransport/libtransport.so.2.0] Error 1
> make[3]: Leaving directory '/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu'
> make[2]: *** [CMakeFiles/Makefile2:583: libtransport/CMakeFiles/transport.dir/all] Error 2
> make[2]: Leaving directory '/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu'
> make[1]: *** [Makefile:159: all] Error 2
> make[1]: Leaving directory '/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu'
> dh_auto_build: error: cd obj-x86_64-linux-gnu && make -j2 "INSTALL=install --strip-program=true" VERBOSE=1 returned exit code 2
> make: *** [debian/rules:31: binary] Error 25
> dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2
> --------------------------------------------------------------------------------

This FTBFS looks triggered by

libjsoncpp (1.9.6-4) unstable; urgency=medium

  * Build static library again.
...
 -- Timo Röhling <roehling at debian.org>  Thu, 04 Sep 2025 17:04:25 +0200

Editing libtransport/CMakeLists.txt to us JsonCpp::JsonCppShared instead 
of JsonCpp::JsonCpp fixes the build, but that shouldn't be necessary.

Timo, can you see what's going wrong here related to 
https://sources.debian.org/src/spectrum2/2.2.1%2Bdfsg-2/cmake_modules/FindJsonCpp.cmake 
?

Thanks
Adrian

BTS: This is with CMake 3.



More information about the Pkg-xmpp-devel mailing list