On 06/27/2018 01:38 PM, Dave Love wrote:
Florian Weimer <fweimer@xxxxxxxxxx> writes:
On 06/26/2018 02:53 PM, Dave Love wrote:
What has changed in the last month to affect building shared libraries
in rawhide?
I tried to rebuild libxsmm in rawhide, after changing the spec to use
python2 explicitly, and it failed with
/usr/bin/ld: build/intel64/libxsmm_main.o: relocation
R_X86_64_PC32 against symbol `libxsmm_crc32_u64' can not be used
when making a shared object; recompile with -fPIC
The sources are compiled with -fpic and it's x86_64 only, so -fPIC
v. -fpic shouldn't matter as I understand it.
It's related to annobin. libxsmm_crc32_u64 is a static function with
a target attribute, and the sources are compiled with
-ffunction-sections.
Thanks for such a swift analysis!
[I'm not sure why all the flags are as they are, but they're partly to
do hardening without the performance penalty from the full set of
optflags and global_ldflags (?).]
The complexity is due to our choice of keeping upstream defaults in the
toolchain, and the need for different flags with static and dynamic
linking to implement hardening.
Florian
_______________________________________________
devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://getfedora.org/code-of-conduct.html
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx/message/EXL5RJWTPVPXWANN3N2HOJQFI2ZW42SZ/