[Pkg-kde-extras] Bug#801817: link errors with the libtelepathy-qt-service.a static library

Daniel Pocock daniel at pocock.pro
Wed Oct 14 20:48:52 UTC 2015


Package: libtelepathy-qt4-dev
Version: 0.9.6.1-2


I tried to link against the libtelepathy-qt4-service.a static library
and various errors appear:

usr/bin/ld.bfd.real:
/usr/lib/gcc/x86_64-linux-gnu/4.9/../../../x86_64-linux-gnu/libtelepathy-qt4-service.a(base-connection-manager.cpp.o):
relocation R_X86_64_32 against
`_ZN2Tp21BaseConnectionManager16staticMetaObjectE' can not be used when
making a shared object; recompile with -fPIC



I tried recompiling the whole library with -fPIC and it didn't resolve
the issue.

I made a shared library and I've been able to link against that.  My
changes to make it a shared library are on a branch here:

https://github.com/dpocock/telepathy-qt-debian/tree/jessie-build-all-shared
-------------- next part --------------

g++ -DHAVE_CONFIG_H -I. -I../..  -fPIC -D_FORTIFY_SOURCE=2 -I/usr/include/telepathy-qt4 -I/usr/include/qt4 -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtNetwork -I/usr/include/qt4/QtDBus -I/usr/include/postgresql -I/usr/include/sipxtapi -D__pingtel_on_posix__ -D_linux_ -D_REENTRANT -D_FILE_OFFS -DDEFAULT_BRIDGE_MAX_IN_OUTPUTS=20 -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -DRESIP_OSTYPE_LINUX -DRESIP_ARCH_X86_64 -DRESIP_LARCH_ -D_REENTRANT -DRESIP_TOOLCHAIN_GNU  -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -fpermissive -Wall -Wno-deprecated -fPIC -c -o telepathy-resiprocate.o telepathy-resiprocate.cxx
g++ -DHAVE_CONFIG_H -I. -I../..  -fPIC -D_FORTIFY_SOURCE=2 -I/usr/include/telepathy-qt4 -I/usr/include/qt4 -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtNetwork -I/usr/include/qt4/QtDBus -I/usr/include/postgresql -I/usr/include/sipxtapi -D__pingtel_on_posix__ -D_linux_ -D_REENTRANT -D_FILE_OFFS -DDEFAULT_BRIDGE_MAX_IN_OUTPUTS=20 -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -DRESIP_OSTYPE_LINUX -DRESIP_ARCH_X86_64 -DRESIP_LARCH_ -D_REENTRANT -DRESIP_TOOLCHAIN_GNU  -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -fpermissive -Wall -Wno-deprecated -fPIC -c -o connection.o connection.cxx
g++ -DHAVE_CONFIG_H -I. -I../..  -fPIC -D_FORTIFY_SOURCE=2 -I/usr/include/telepathy-qt4 -I/usr/include/qt4 -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtNetwork -I/usr/include/qt4/QtDBus -I/usr/include/postgresql -I/usr/include/sipxtapi -D__pingtel_on_posix__ -D_linux_ -D_REENTRANT -D_FILE_OFFS -DDEFAULT_BRIDGE_MAX_IN_OUTPUTS=20 -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -DRESIP_OSTYPE_LINUX -DRESIP_ARCH_X86_64 -DRESIP_LARCH_ -D_REENTRANT -DRESIP_TOOLCHAIN_GNU  -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -fpermissive -Wall -Wno-deprecated -fPIC -c -o protocol.o protocol.cxx
/bin/bash ../../libtool  --tag=CXX   --mode=link g++  -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -fpermissive -Wall -Wno-deprecated  -fPIE -pie -Wl,-z,relro -Wl,-z,now -lcares -o telepathy-resiprocate telepathy-resiprocate.o connection.o protocol.o ../../resip/dum/libdum.la ../../resip/stack/libresip.la ../../rutil/librutil.la -ltelepathy-qt4 -ltelepathy-qt4-service -lQtDBus -lQtNetwork -lQtCore -lssl -lcrypto -lpthread 
libtool: link: g++ -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -fpermissive -Wall -Wno-deprecated -fPIE -pie -Wl,-z -Wl,relro -Wl,-z -Wl,now -o .libs/telepathy-resiprocate telepathy-resiprocate.o connection.o protocol.o  -lcares ../../resip/dum/.libs/libdum.so ../../resip/stack/.libs/libresip.so ../../rutil/.libs/librutil.so -ltelepathy-qt4 -ltelepathy-qt4-service -lQtDBus -lQtNetwork -lQtCore -lssl -lcrypto -lpthread
/usr/bin/ld.bfd.real: /usr/lib/gcc/x86_64-linux-gnu/4.9/../../../x86_64-linux-gnu/libtelepathy-qt4-service.a(base-connection-manager.cpp.o): relocation R_X86_64_32 against `_ZN2Tp21BaseConnectionManager16staticMetaObjectE' can not be used when making a shared object; recompile with -fPIC
/usr/lib/gcc/x86_64-linux-gnu/4.9/../../../x86_64-linux-gnu/libtelepathy-qt4-service.a: error adding symbols: Bad value
collect2: error: ld returned 1 exit status
Makefile:481: recipe for target 'telepathy-resiprocate' failed




More information about the pkg-kde-extras mailing list