check flags: Making check in src make[1]: Entering directory `/tmp/patchelf-0.4/src' make[1]: Nothing to be done for `check'. make[1]: Leaving directory `/tmp/patchelf-0.4/src' Making check in tests make[1]: Entering directory `/tmp/patchelf-0.4/tests' make main main-scoped simple big-dynstr make[2]: Entering directory `/tmp/patchelf-0.4/tests' gcc -fpic -o main.o -c main.c gcc -fpic -o foo.o -c foo.c gcc -fpic -o bar.o -c bar.c NIX_DONT_SET_RPATH=1 gcc -Wl,--disable-new-dtags -shared -o libbar.so bar.o -L . -Wl,-rpath,`pwd`/no-such-path NIX_DONT_SET_RPATH=1 gcc -Wl,--disable-new-dtags -shared -o libfoo.so foo.o -L . -lbar LD_LIBRARY_PATH=. gcc -Wl,--disable-new-dtags -o main main.o -L . -lfoo NIX_DONT_SET_RPATH=1 gcc -Wl,--enable-new-dtags -shared -o libbar-scoped.so bar.o NIX_DONT_SET_RPATH=1 gcc -Wl,--enable-new-dtags -shared -o libfoo-scoped.so foo.o -L . -lbar-scoped LD_LIBRARY_PATH=. gcc -Wl,--enable-new-dtags -o main-scoped main.o -L . -lfoo-scoped gcc -DPACKAGE_NAME=\"patchelf\" -DPACKAGE_TARNAME=\"patchelf\" -DPACKAGE_VERSION=\"\"0.4\"\" -DPACKAGE_STRING=\"patchelf\ \"0.4\"\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE=\"patchelf\" -DVERSION=\"\"0.4\"\" -I. -I. -g -O2 -c simple.c gcc -g -O2 -o simple simple.o gcc -DPACKAGE_NAME=\"patchelf\" -DPACKAGE_TARNAME=\"patchelf\" -DPACKAGE_VERSION=\"\"0.4\"\" -DPACKAGE_STRING=\"patchelf\ \"0.4\"\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE=\"patchelf\" -DVERSION=\"\"0.4\"\" -I. -I. -g -O2 -c big-dynstr.c LD_LIBRARY_PATH=. gcc -Wl,--disable-new-dtags -o big-dynstr big-dynstr.o -L . -lfoo make[2]: Leaving directory `/tmp/patchelf-0.4/tests' make check-TESTS make[2]: Entering directory `/tmp/patchelf-0.4/tests' ./main: error while loading shared libraries: libfoo.so: cannot open shared object file: No such file or directory PASS: plain-fail.sh Hello World This is foo()! This is bar()! Result is 46 PASS: plain-run.sh RPATH before: /tmp/patchelf-0.4/tests/no-such-path patching ELF file `scratch/libbar.so' removing directory `/tmp/patchelf-0.4/tests/no-such-path' from RPATH new rpath is `' RPATH after: Hello World This is foo()! This is bar()! Result is 46 PASS: shrink-rpath.sh Hello World current interpreter is /lib/ld-linux.so.2 patching ELF file `scratch/simple' replacing section `.interp' with size 6 found .interp section; this is an executable using replaced section `.interp' last replaced is 1 looking at section `.interp' first reserved offset/addr is 0x128/0x8048128 first page is 0x8048000 needed space is 284 clearing first 20 bytes rewriting section `.interp' from offset 276 (size 19) to offset 276 (size 6) running with missing interpreter... ./set-interpreter-short.sh: line 15: scratch/simple: No such file or directory PASS: set-interpreter-short.sh Hello World current interpreter is /lib/ld-linux.so.2 patching ELF file `scratch/simple' replacing section `.interp' with size 133 found .interp section; this is an executable using replaced section `.interp' last replaced is 1 looking at section `.interp' first reserved offset/addr is 0x128/0x8048128 first page is 0x8048000 needed space is 412 needed space is 444 needed pages is 1 clearing first 4084 bytes rewriting section `.interp' from offset 4372 (size 19) to offset 308 (size 133) running with missing interpreter... ./set-interpreter-long.sh: line 16: scratch/simple: No such file or directory running with new interpreter... Hello World PASS: set-interpreter-long.sh patching ELF file `scratch/main' new rpath is `/oops:/tmp/patchelf-0.4/tests/scratch/libsA:/tmp/patchelf-0.4/tests/scratch/libsB' rpath is too long, resizing... DT_NULL index is 21 replacing section `.dynamic' with size 224 replacing section `.dynstr' with size 233 found .interp section; this is an executable using replaced section `.dynstr' using replaced section `.dynamic' last replaced is 20 looking at section `.interp' replacing section `.interp' which is in the way looking at section `.note.ABI-tag' replacing section `.note.ABI-tag' which is in the way looking at section `.hash' replacing section `.hash' which is in the way looking at section `.gnu.hash' replacing section `.gnu.hash' which is in the way looking at section `.dynsym' replacing section `.dynsym' which is in the way looking at section `.dynstr' looking at section `.gnu.version' first reserved offset/addr is 0x334/0x8048334 first page is 0x8048000 needed space is 1128 needed space is 1160 needed pages is 1 clearing first 4608 bytes rewriting section `.dynamic' from offset 5632 (size 216) to offset 308 (size 224) rewriting section `.dynstr' from offset 4764 (size 151) to offset 532 (size 233) rewriting section `.dynsym' from offset 4556 (size 208) to offset 768 (size 208) rewriting section `.gnu.hash' from offset 4496 (size 60) to offset 976 (size 60) rewriting section `.hash' from offset 4424 (size 72) to offset 1036 (size 72) rewriting section `.interp' from offset 4372 (size 19) to offset 1108 (size 19) rewriting section `.note.ABI-tag' from offset 4392 (size 32) to offset 1128 (size 32) Hello World This is foo()! This is bar()! Result is 46 PASS: set-rpath.sh patching ELF file `scratch/no-rpath' new rpath is `/foo:/bar:/xxxxxxxxxxxxxxx' rpath is too long, resizing... DT_NULL index is 19 replacing section `.dynamic' with size 208 replacing section `.dynstr' with size 103 replacing section `.interp' with size 19 found .interp section; this is an executable using replaced section `.interp' using replaced section `.dynstr' using replaced section `.dynamic' last replaced is 17 looking at section `.interp' looking at section `.note.ABI-tag' replacing section `.note.ABI-tag' which is in the way looking at section `.hash' replacing section `.hash' which is in the way looking at section `.dynsym' replacing section `.dynsym' which is in the way looking at section `.dynstr' looking at section `.gnu.version' first reserved offset/addr is 0x1ec/0x80481ec first page is 0x8048000 needed space is 728 needed space is 760 needed pages is 1 clearing first 4312 bytes rewriting section `.dynamic' from offset 5288 (size 200) to offset 276 (size 208) rewriting section `.dynstr' from offset 4512 (size 76) to offset 484 (size 103) rewriting section `.dynsym' from offset 4432 (size 80) to offset 588 (size 80) rewriting section `.hash' from offset 4392 (size 40) to offset 668 (size 40) rewriting section `.interp' from offset 4340 (size 19) to offset 708 (size 19) rewriting section `.note.ABI-tag' from offset 4360 (size 32) to offset 728 (size 32) PASS: no-rpath.sh patching ELF file `scratch/big-dynstr' new rpath is `/oops:/tmp/patchelf-0.4/tests/scratch/libsA:/tmp/patchelf-0.4/tests/scratch/libsB' rpath is too long, resizing... DT_NULL index is 21 replacing section `.dynamic' with size 224 replacing section `.dynstr' with size 233 found .interp section; this is an executable using replaced section `.dynstr' using replaced section `.dynamic' last replaced is 20 looking at section `.interp' replacing section `.interp' which is in the way looking at section `.note.ABI-tag' replacing section `.note.ABI-tag' which is in the way looking at section `.hash' replacing section `.hash' which is in the way looking at section `.gnu.hash' replacing section `.gnu.hash' which is in the way looking at section `.dynsym' replacing section `.dynsym' which is in the way looking at section `.dynstr' looking at section `.gnu.version' first reserved offset/addr is 0x334/0x8048334 first page is 0x8048000 needed space is 1128 needed space is 1160 needed pages is 1 clearing first 4608 bytes rewriting section `.dynamic' from offset 37632 (size 216) to offset 308 (size 224) rewriting section `.dynstr' from offset 4764 (size 151) to offset 532 (size 233) rewriting section `.dynsym' from offset 4556 (size 208) to offset 768 (size 208) rewriting section `.gnu.hash' from offset 4496 (size 60) to offset 976 (size 60) rewriting section `.hash' from offset 4424 (size 72) to offset 1036 (size 72) rewriting section `.interp' from offset 4372 (size 19) to offset 1108 (size 19) rewriting section `.note.ABI-tag' from offset 4392 (size 32) to offset 1128 (size 32) Hello World This is foo()! This is bar()! Result is 46 PASS: big-dynstr.sh patching ELF file `scratch/main-scoped' new rpath is `/oops:/tmp/patchelf-0.4/tests/scratch/libsA:/tmp/patchelf-0.4/tests/scratch/libsB' rpath is too long, resizing... DT_NULL index is 21 replacing section `.dynamic' with size 224 replacing section `.dynstr' with size 240 found .interp section; this is an executable using replaced section `.dynstr' using replaced section `.dynamic' last replaced is 20 looking at section `.interp' replacing section `.interp' which is in the way looking at section `.note.ABI-tag' replacing section `.note.ABI-tag' which is in the way looking at section `.hash' replacing section `.hash' which is in the way looking at section `.gnu.hash' replacing section `.gnu.hash' which is in the way looking at section `.dynsym' replacing section `.dynsym' which is in the way looking at section `.dynstr' looking at section `.gnu.version' first reserved offset/addr is 0x33a/0x804833a first page is 0x8048000 needed space is 1132 needed space is 1164 needed pages is 1 clearing first 4614 bytes rewriting section `.dynamic' from offset 5648 (size 216) to offset 308 (size 224) rewriting section `.dynstr' from offset 4764 (size 158) to offset 532 (size 240) rewriting section `.dynsym' from offset 4556 (size 208) to offset 772 (size 208) rewriting section `.gnu.hash' from offset 4496 (size 60) to offset 980 (size 60) rewriting section `.hash' from offset 4424 (size 72) to offset 1040 (size 72) rewriting section `.interp' from offset 4372 (size 19) to offset 1112 (size 19) rewriting section `.note.ABI-tag' from offset 4392 (size 32) to offset 1132 (size 32) ./main-scoped: error while loading shared libraries: libbar-scoped.so: cannot open shared object file: No such file or directory patching ELF file `scratch/libsA/libfoo-scoped.so' new rpath is `/oops:/tmp/patchelf-0.4/tests/scratch/libsB' rpath is too long, resizing... DT_NULL index is 21 replacing section `.dynamic' with size 216 replacing section `.dynstr' with size 193 no .interp section; this is a dynamic library last page is 0x2000 needed space is 572 rewriting section `.dynamic' from offset 1256 (size 208) to offset 8352 (size 216) rewriting section `.dynstr' from offset 500 (size 149) to offset 8568 (size 193) Hello World This is foo()! This is bar()! Result is 46 patching ELF file `scratch/main-scoped' removing directory `/oops' from RPATH removing directory `/tmp/patchelf-0.4/tests/scratch/libsB' from RPATH new rpath is `/tmp/patchelf-0.4/tests/scratch/libsA' Hello World This is foo()! This is bar()! Result is 46 PASS: set-rpath-library.sh ================== All 9 tests passed ================== make[2]: Leaving directory `/tmp/patchelf-0.4/tests' make[1]: Leaving directory `/tmp/patchelf-0.4/tests' make[1]: Entering directory `/tmp/patchelf-0.4' make[1]: Nothing to be done for `check-am'. make[1]: Leaving directory `/tmp/patchelf-0.4'