Bug ID | 1070906 |
---|---|
Summary | glibc: Fail to build shared objects that use libmvec.so functions. |
Classification | openSUSE |
Product | openSUSE Distribution |
Version | Leap 42.3 |
Hardware | Other |
OS | Other |
Status | NEW |
Severity | Normal |
Priority | P5 - None |
Component | Basesystem |
Assignee | bnc-team-screening@forge.provo.novell.com |
Reporter | mardnh@gmx.de |
QA Contact | qa-bugs@suse.de |
Found By | --- |
Blocker | --- |
With gcc6 or gcc7 you can build shared objects which are optimized to call libmvec.so functions. When such calls go through the _finite aliases the linker is unable to assemble the final user shared object because the calls contain non-PIC relocs against shared object symbols. The build failures being seen on Leap systems are: $ gcc-6 ./log.c -O3 -fopenmp -ffast-math -I/usr/include -fPIC -shared -lm -o log.so /usr/lib64/gcc/x86_64-suse-linux/6/../../../../x86_64-suse-linux/bin/ld: /usr/lib64/libmvec_nonshared.a(svml_finite_alias.o_X86_64_PC32 against symbol `_ZGVbN2v_log@@GLIBC_2.22' can not be used when making a shared object; recompile with -fPIC /usr/lib64/gcc/x86_64-suse-linux/6/../../../../x86_64-suse-linux/bin/ld: final link failed: Bad value collect2: error: ld returned 1 exit status The bug seems known fixed upstream: https://sourceware.org/bugzilla/show_bug.cgi?id=19590 https://lists.debian.org/debian-glibc/2016/03/msg00125.html