FAILED: libx265.so.199 : && /usr/bin/x86_64-pc-linux-gnu-g++ -m32 -mfpmath=sse -fPIC -march=native -O2 -pipe -frecord-gcc-switches -Wl,-O1 -Wl,--as-needed -L. -Wl,-Bsymbolic,-znoexecstack -shared -Wl,-soname,libx265.so.199 -o libx265.so.199 encoder/CMakeFiles/encoder.dir/analysis.cpp.o encoder/CMakeFiles/encoder.dir/search.cpp.o encoder/CMakeFiles/encoder.dir/bitcost.cpp.o encoder/CMakeFiles/encoder.dir/motion.cpp.o encoder/CMakeFiles/encoder.dir/slicetype.cpp.o encoder/CMakeFiles/encoder.dir/frameencoder.cpp.o encoder/CMakeFiles/encoder.dir/framefilter.cpp.o encoder/CMakeFiles/encoder.dir/level.cpp.o encoder/CMakeFiles/encoder.dir/nal.cpp.o encoder/CMakeFiles/encoder.dir/sei.cpp.o encoder/CMakeFiles/encoder.dir/sao.cpp.o encoder/CMakeFiles/encoder.dir/entropy.cpp.o encoder/CMakeFiles/encoder.dir/dpb.cpp.o encoder/CMakeFiles/encoder.dir/ratecontrol.cpp.o encoder/CMakeFiles/encoder.dir/reference.cpp.o encoder/CMakeFiles/encoder.dir/encoder.cpp.o encoder/CMakeFiles/encoder.dir/api.cpp.o encoder/CMakeFiles/encoder.dir/weightPrediction.cpp.o common/CMakeFiles/common.dir/x86/pixel-a.asm.o common/CMakeFiles/common.dir/x86/const-a.asm.o common/CMakeFiles/common.dir/x86/cpu-a.asm.o common/CMakeFiles/common.dir/x86/ssd-a.asm.o common/CMakeFiles/common.dir/x86/mc-a.asm.o common/CMakeFiles/common.dir/x86/mc-a2.asm.o common/CMakeFiles/common.dir/x86/pixel-util8.asm.o common/CMakeFiles/common.dir/x86/blockcopy8.asm.o common/CMakeFiles/common.dir/x86/pixeladd8.asm.o common/CMakeFiles/common.dir/x86/dct8.asm.o common/CMakeFiles/common.dir/x86/seaintegral.asm.o common/CMakeFiles/common.dir/x86/sad-a.asm.o common/CMakeFiles/common.dir/x86/intrapred8.asm.o common/CMakeFiles/common.dir/x86/intrapred8_allangs.asm.o common/CMakeFiles/common.dir/x86/v4-ipfilter8.asm.o common/CMakeFiles/common.dir/x86/h-ipfilter8.asm.o common/CMakeFiles/common.dir/x86/ipfilter8.asm.o common/CMakeFiles/common.dir/x86/loopfilter.asm.o common/CMakeFiles/common.dir/x86/pixel-32.asm.o common/CMakeFiles/common.dir/x86/asm-primitives.cpp.o common/CMakeFiles/common.dir/vec/vec-primitives.cpp.o common/CMakeFiles/common.dir/vec/dct-sse3.cpp.o common/CMakeFiles/common.dir/vec/dct-ssse3.cpp.o common/CMakeFiles/common.dir/vec/dct-sse41.cpp.o common/CMakeFiles/common.dir/primitives.cpp.o common/CMakeFiles/common.dir/pixel.cpp.o common/CMakeFiles/common.dir/dct.cpp.o common/CMakeFiles/common.dir/lowpassdct.cpp.o common/CMakeFiles/common.dir/ipfilter.cpp.o common/CMakeFiles/common.dir/intrapred.cpp.o common/CMakeFiles/common.dir/loopfilter.cpp.o common/CMakeFiles/common.dir/constants.cpp.o common/CMakeFiles/common.dir/cpu.cpp.o common/CMakeFiles/common.dir/version.cpp.o common/CMakeFiles/common.dir/threading.cpp.o common/CMakeFiles/common.dir/threadpool.cpp.o common/CMakeFiles/common.dir/wavefront.cpp.o common/CMakeFiles/common.dir/md5.cpp.o common/CMakeFiles/common.dir/bitstream.cpp.o common/CMakeFiles/common.dir/yuv.cpp.o common/CMakeFiles/common.dir/shortyuv.cpp.o common/CMakeFiles/common.dir/picyuv.cpp.o common/CMakeFiles/common.dir/common.cpp.o common/CMakeFiles/common.dir/param.cpp.o common/CMakeFiles/common.dir/frame.cpp.o common/CMakeFiles/common.dir/framedata.cpp.o common/CMakeFiles/common.dir/cudata.cpp.o common/CMakeFiles/common.dir/slice.cpp.o common/CMakeFiles/common.dir/lowres.cpp.o common/CMakeFiles/common.dir/piclist.cpp.o common/CMakeFiles/common.dir/predict.cpp.o common/CMakeFiles/common.dir/scalinglist.cpp.o common/CMakeFiles/common.dir/quant.cpp.o common/CMakeFiles/common.dir/deblock.cpp.o common/CMakeFiles/common.dir/scaler.cpp.o -Wl,-Bstatic -lx265_main12 -lx265_main10 -Wl,-Bdynamic -lpthread -lrt -ldl && : /usr/lib/gcc/x86_64-pc-linux-gnu/13/../../../../x86_64-pc-linux-gnu/bin/ld: common/CMakeFiles/common.dir/x86/pixel-a.asm.o: warning: relocation in read-only section `.text' /usr/lib/gcc/x86_64-pc-linux-gnu/13/../../../../x86_64-pc-linux-gnu/bin/ld: read-only segment has dynamic relocations collect2: error: ld returned 1 exit status ninja: build stopped: subcommand failed. # emerge -pqv '=media-libs/x265-3.5-r2::gentoo' [ebuild R ] media-libs/x265-3.5-r2 USE="10bit 12bit -numa -pic -test" ABI_X86="32 (64) (-x32)"
Does USE=pic help?
(In reply to Sam James from comment #1) > Does USE=pic help? it does help.
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7df93674f9e3aef31b49307e3edd955c52a8ee74 commit 7df93674f9e3aef31b49307e3edd955c52a8ee74 Author: Sam James <sam@gentoo.org> AuthorDate: 2023-10-09 02:42:18 +0000 Commit: Sam James <sam@gentoo.org> CommitDate: 2023-12-13 21:44:19 +0000 profiles/features/hardened/amd64: enable USE=pic There's no real reason not to do this. The status quo is wrong for when we're doing multilib 32-bit builds on x86, and we already have to undo this on musl because its handling for TEXTRELs is limited (see bug #707660). (I noted my intention to do this in 80a72bac2350811712c018b68f61a031736c579f as well.) This seems to have been added originally in e718e1dc1781b3bb5cd80233c217aea3b0e46755 and bb28d08f1cf8cf16f6e57929a8de6b7c85bbe714 (git graft commit). Bug: https://bugs.gentoo.org/707660 Bug: https://bugs.gentoo.org/913412 Signed-off-by: Sam James <sam@gentoo.org> profiles/features/hardened/amd64/make.defaults | 2 +- profiles/features/hardened/amd64/no-multilib/make.defaults | 6 ------ 2 files changed, 1 insertion(+), 7 deletions(-)
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=95c1bdc571f49363a2e8c3acc9c65cb3d51131e3 commit 95c1bdc571f49363a2e8c3acc9c65cb3d51131e3 Author: Sam James <sam@gentoo.org> AuthorDate: 2023-12-21 08:16:46 +0000 Commit: Sam James <sam@gentoo.org> CommitDate: 2023-12-21 09:56:23 +0000 media-libs/x265: always build as PIC Linkers are getting stricter. Closes: https://bugs.gentoo.org/913412 Signed-off-by: Sam James <sam@gentoo.org> media-libs/x265/x265-3.5-r3.ebuild | 217 +++++++++++++++++++++++++++++++++++++ media-libs/x265/x265-9999.ebuild | 15 +-- 2 files changed, 223 insertions(+), 9 deletions(-)
There's a chance that the next release might be better here for ARM at least (https://bitbucket.org/multicoreware/x265_git/commits/02a961bcd26cb299108a2065692500ab895059e9).