Bug#729163: tango: FBTFS on sparc64
Aurelien Jarno
aurel32 at debian.org
Sat Nov 9 18:04:07 UTC 2013
Source: tango
Version: 8.1.2c+dfsg-1
Severity: important
Tags: upstream patch
Justification: fails to build from source
tango fails to build from source on sparc64 with the following error:
| /bin/bash ../../libtool --tag=CXX --mode=link g++ -Wall -D_FORTIFY_SOURCE=2 -O1 -fpie -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -std=c++11 -D_REENTRANT -DOMNI_UNLOADABLE_STUBS -Wl,-z,now -pie -Wl,-z,relro -o DataBaseds ClassFactory.o DataBaseClass.o DataBase.o DataBaseStateMachine.o main.o update_starter.o DataBaseUtils.o -L../../lib/cpp/server -ltango -L../../lib/cpp/log4tango/src -llog4tango -lmysqlclient_r -L/usr/lib -lz -lzmq -lpthread -lnsl -ldl -L/usr/lib -lomniORB4 -lomniDynamic4 -lCOS4 -lpthread -lomnithread -lnsl -L/usr/lib -lpthread -lomnithread -lpthread
| libtool: link: g++ -Wall -D_FORTIFY_SOURCE=2 -O1 -fpie -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -std=c++11 -D_REENTRANT -DOMNI_UNLOADABLE_STUBS -Wl,-z -Wl,now -pie -Wl,-z -Wl,relro -o .libs/DataBaseds ClassFactory.o DataBaseClass.o DataBase.o DataBaseStateMachine.o main.o update_starter.o DataBaseUtils.o -L../../lib/cpp/server /«BUILDDIR»/tango-8.1.2c+dfsg/build/lib/cpp/server/.libs/libtango.so -L../../lib/cpp/log4tango/src /«BUILDDIR»/tango-8.1.2c+dfsg/build/lib/cpp/log4tango/src/.libs/liblog4tango.so -lmysqlclient_r -L/usr/lib -lz -lzmq -ldl -lomniORB4 -lomniDynamic4 -lCOS4 -lnsl -lomnithread -lpthread
| DataBaseClass.o: In function `Tango::Logging::get_core_logger()':
| /«BUILDDIR»/tango-8.1.2c+dfsg/build/cppserver/database/../../../lib/cpp/server/logging.h:98:(.text+0x10): relocation truncated to fit: R_SPARC_GOT13 against symbol `Tango::_core_logger' defined in .bss section in /«BUILDDIR»/tango-8.1.2c+dfsg/build/lib/cpp/server/.libs/libtango.so
| /«BUILDDIR»/tango-8.1.2c+dfsg/build/cppserver/database/../../../lib/cpp/server/logging.h:98:(.text+0xd0): relocation truncated to fit: R_SPARC_GOT13 against symbol `Tango::_core_logger' defined in .bss section in /«BUILDDIR»/tango-8.1.2c+dfsg/build/lib/cpp/server/.libs/libtango.so
| /«BUILDDIR»/tango-8.1.2c+dfsg/build/cppserver/database/../../../lib/cpp/server/logging.h:98:(.text+0x190): relocation truncated to fit: R_SPARC_GOT13 against symbol `Tango::_core_logger' defined in .bss section in /«BUILDDIR»/tango-8.1.2c+dfsg/build/lib/cpp/server/.libs/libtango.so
| /«BUILDDIR»/tango-8.1.2c+dfsg/build/cppserver/database/../../../lib/cpp/server/logging.h:98:(.text+0x250): relocation truncated to fit: R_SPARC_GOT13 against symbol `Tango::_core_logger' defined in .bss section in /«BUILDDIR»/tango-8.1.2c+dfsg/build/lib/cpp/server/.libs/libtango.so
| /«BUILDDIR»/tango-8.1.2c+dfsg/build/cppserver/database/../../../lib/cpp/server/logging.h:98:(.text+0x310): relocation truncated to fit: R_SPARC_GOT13 against symbol `Tango::_core_logger' defined in .bss section in /«BUILDDIR»/tango-8.1.2c+dfsg/build/lib/cpp/server/.libs/libtango.so
| /«BUILDDIR»/tango-8.1.2c+dfsg/build/cppserver/database/../../../lib/cpp/server/logging.h:98:(.text+0x3d0): relocation truncated to fit: R_SPARC_GOT13 against symbol `Tango::_core_logger' defined in .bss section in /«BUILDDIR»/tango-8.1.2c+dfsg/build/lib/cpp/server/.libs/libtango.so
| /«BUILDDIR»/tango-8.1.2c+dfsg/build/cppserver/database/../../../lib/cpp/server/logging.h:98:(.text+0x490): relocation truncated to fit: R_SPARC_GOT13 against symbol `Tango::_core_logger' defined in .bss section in /«BUILDDIR»/tango-8.1.2c+dfsg/build/lib/cpp/server/.libs/libtango.so
| /«BUILDDIR»/tango-8.1.2c+dfsg/build/cppserver/database/../../../lib/cpp/server/logging.h:98:(.text+0x550): relocation truncated to fit: R_SPARC_GOT13 against symbol `Tango::_core_logger' defined in .bss section in /«BUILDDIR»/tango-8.1.2c+dfsg/build/lib/cpp/server/.libs/libtango.so
| /«BUILDDIR»/tango-8.1.2c+dfsg/build/cppserver/database/../../../lib/cpp/server/logging.h:98:(.text+0x610): relocation truncated to fit: R_SPARC_GOT13 against symbol `Tango::_core_logger' defined in .bss section in /«BUILDDIR»/tango-8.1.2c+dfsg/build/lib/cpp/server/.libs/libtango.so
| /«BUILDDIR»/tango-8.1.2c+dfsg/build/cppserver/database/../../../lib/cpp/server/logging.h:98:(.text+0x6d0): relocation truncated to fit: R_SPARC_GOT13 against symbol `Tango::_core_logger' defined in .bss section in /«BUILDDIR»/tango-8.1.2c+dfsg/build/lib/cpp/server/.libs/libtango.so
| /«BUILDDIR»/tango-8.1.2c+dfsg/build/cppserver/database/../../../lib/cpp/server/logging.h:98:(.text+0x790): additional relocation overflows omitted from the output
| collect2: error: ld returned 1 exit status
| make[4]: *** [DataBaseds] Error 1
This is due to the usage of -fpie instead of -fPIE, which create a too
big GOT table. The following patch fixes the issue:
--- tango-8.1.2c+dfsg.orig/cppserver/database/Makefile.am
+++ tango-8.1.2c+dfsg/cppserver/database/Makefile.am
@@ -6,7 +6,7 @@ INCLUDES = $(ORB_INCLUDE_PREFIX) $(LIBZ
$(MYSQLCLIENT_CFLAGS) \
$(ZLIB_CPPFLAGS)
-AM_CXXFLAGS= -Wall -D_FORTIFY_SOURCE=2 -O1 -fpie
+AM_CXXFLAGS= -Wall -D_FORTIFY_SOURCE=2 -O1 -fPIE
LDADD = -L$(top_builddir)/lib/cpp/server -ltango -L$(top_builddir)/lib/cpp/log4tango/src \
-llog4tango $(MYSQLCLIENT_LDFLAGS) \
--- tango-8.1.2c+dfsg.orig/cppserver/database/Makefile.in
+++ tango-8.1.2c+dfsg/cppserver/database/Makefile.in
@@ -327,7 +327,7 @@ INCLUDES = $(ORB_INCLUDE_PREFIX) $(LIBZ
$(MYSQLCLIENT_CFLAGS) \
$(ZLIB_CPPFLAGS)
-AM_CXXFLAGS = -Wall -D_FORTIFY_SOURCE=2 -O1 -fpie
+AM_CXXFLAGS = -Wall -D_FORTIFY_SOURCE=2 -O1 -fPIE
LDADD = -L$(top_builddir)/lib/cpp/server -ltango -L$(top_builddir)/lib/cpp/log4tango/src \
-llog4tango $(MYSQLCLIENT_LDFLAGS) \
$(MYSQLCLIENT_LIBS) $(ZLIB_LDFLAGS) $(ZLIB_LIBS) $(LIBZMQ_LIBS)
Would it be possible to include it in the next upload? Thanks in advance
-- System Information:
Debian Release: jessie/sid
APT prefers unreleased
APT policy: (500, 'unreleased'), (500, 'unstable')
Architecture: sparc64
Kernel: Linux 3.2.0-4-sparc64
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
More information about the debian-science-maintainers
mailing list