Bug#837489: antlr: Please build libantlr.a with -fPIC

Balint Reczey balint at balintreczey.hu
Sun Sep 11 23:16:32 UTC 2016


Source: antlr
Version: 2.7.7+dfsg-7
Severity: important
User: balint at balintreczey.hu
Usertags: pie-bindnow-20160906
Justification: makes gpt FTBFS with extra hardening
Affects: gpt sqlitebrowser

Dear Maintainers,

During a rebuild of all packages in sid, gpt
failed to build on amd64 with patched GCC and dpkg. The root
cause seems to be that libantlr.a is shipped as a non-PIC library.

The rebuild tested if packages are ready for a transition
enabling PIE and bindnow for amd64 (and selected architectures).

For more information about the changes to sid's dpkg and GCC please
visit:
 https://wiki.debian.org/Hardening/PIEByDefaultTransition

Relevant part of gpt's build log:
...
g++ -DHAVE_CONFIG_H -I. -I. -I.. -I../. -I../src -I../src/modules
-I../src/modules/c_translator -I../s
rc/modules/interpreter -I../src/modules/parser -I../src/modules/parser
-I../src/modules/c_translator -
I../src/modules/interpreter -I../src/modules/c_translator
-I../src/modules/x86 -I../src/modules/x86 -I
/usr/include     -O2  -c -o GPT.o GPT.cpp
/bin/bash ../libtool --tag=CXX --mode=link g++  -O2    -o gpt  main.o
GPT.o ../src/modules/libgportugo
l.la /usr/lib/libantlr.a -L/usr/lib -lpcrecpp
libtool: link: g++ -O2 -o .libs/gpt main.o GPT.o
../src/modules/.libs/libgportugol.so /usr/lib/libant
lr.a -L/usr/lib -lpcrecpp
/usr/bin/ld: /usr/lib/libantlr.a(ASTFactory.o): relocation R_X86_64_32S
against symbol `_ZTVN5antlr10A
STFactoryE' can not be used when making a shared object; recompile with
-fPIC
/usr/bin/ld: /usr/lib/libantlr.a(BaseAST.o): relocation R_X86_64_32S
against symbol `_ZNK5antlr7BaseAS
T13getFirstChildEv' can not be used when making a shared object;
recompile with -fPIC
/usr/bin/ld: /usr/lib/libantlr.a(BitSet.o): relocation R_X86_64_32
against `.rodata.str1.1' can not be
 used when making a shared object; recompile with -fPIC

...

The full build log is available from:
 https://people.debian.org/~rbalint/build-logs/pie-bindnow-20160906/gpt_1.1-2_amd64.build.gz

Thanks,
Balint



More information about the pkg-java-maintainers mailing list