Open ziyao233 opened 4 months ago
I am unsure whether it is the exact same problem, but I see the same failed shared-rpath
test even without LLVM lld on NixOS 24.05.
Here are full build logs I have. Hopefully, these could ease the debug:
There are two tests no-rpath.sh
and shared-rpath.sh
constantly failing on my system.
The test-suite.log
is as follows for both gcc and clang:
===========================================
patchelf 0.18.0: tests/test-suite.log
===========================================
# TOTAL: 56
# PASS: 52
# SKIP: 2
# XFAIL: 0
# FAIL: 2
# XPASS: 0
# ERROR: 0
.. contents:: :depth: 2
FAIL: no-rpath.sh
=================
FAIL no-rpath.sh (exit status: 1)
SKIP: set-rpath-rel-map.sh
==========================
No MIPS_RLD_MAP_REL dynamic section entry, skipping
SKIP set-rpath-rel-map.sh (exit status: 77)
FAIL: shared-rpath.sh
=====================
000000000000400c B a_symbol_name
#### Number of a_symbol_name strings in the library: 4
#### Rename the rpath to something larger than the original
patching ELF file '/home/rocky/Projects/patchelf/tests/libshared-rpath.so'
Number of rpath references: 1
Tainting old rpath with Xs
new rpath is 'a_very_big_rpath_that_is_larger_than_original'
writing liblarge-rpath.so
#### Checking symbol is still there
000000000000400c B a_symbol_name
#### Checking there are no Xs
FAIL shared-rpath.sh (exit status: 1)
SKIP: short-first-segment.sh
============================
skipping test: not supported on x86_64 Linux
SKIP short-first-segment.sh (exit status: 77)
Describe the bug
When building patchelf and tests with LLVM lld, test
shared-rpath
failsSteps To Reproduce
Building patchelf with LLVM lld and run tests.
On my Alpine machine,
Expected behavior
All tests passed.
patchelf --version
outputAdditional context Differing from GNU ld, lld does not reuse string referred by
DT_RPATH
, which results in ashared-rpath.so
with twoa_symbol_name
string, failing the test.Suggest skipping this test when building with lld.