[devel] hasher, rpath, $ORIGIN
Max Ivanov
ivanov.maxim на gmail.com
Вс Янв 24 02:43:20 UTC 2010
Еще забыл добавить в копилку странностей:
1) $ ldd -r /usr/lib/jvm/java/bin/javac
linux-gate.so.1 => (0xb77c0000)
libpthread.so.0 => /lib/libpthread.so.0 (0xb779f000)
libjli.so =>
/usr/lib/jvm/java/bin/../jre/lib/i386/jli/libjli.so (0xb7796000)
libdl.so.2 => /lib/libdl.so.2 (0xb7791000)
libc.so.6 => /lib/libc.so.6 (0xb7639000)
/lib/ld-linux.so.2 (0xb77c1000)
2) $ LD_DEBUG=libs /usr/lib/jvm/java/bin/javac
....
10692: find library=libjli.so [0]; searching
10692: search
path=tls/i686/sse2:tls/i686:tls/sse2:tls:i686/sse2:i686:sse2:
(RPATH from file /usr/lib/jvm/java/bin/javac)
10692: trying file=tls/i686/sse2/libjli.so
10692: trying file=tls/i686/libjli.so
10692: trying file=tls/sse2/libjli.so
10692: trying file=tls/libjli.so
10692: trying file=i686/sse2/libjli.so
10692: trying file=i686/libjli.so
10692: trying file=sse2/libjli.so
10692: trying file=libjli.so
10692: search cache=/etc/ld.so.cache
10692: search
path=/lib/tls/i686/sse2:/lib/tls/i686:/lib/tls/sse2:/lib/tls:/lib/i686/sse2:/lib/i686:/lib/sse2:/lib:/usr/lib/tls/i686/sse2:/usr/lib/tls/i686:/usr/lib/tls/sse2:/usr/lib/tls:/usr/lib/i686/sse2:/usr/lib/i686:/usr/lib/sse2:/usr/lib
(system search path)
10692: trying file=/lib/tls/i686/sse2/libjli.so
10692: trying file=/lib/tls/i686/libjli.so
10692: trying file=/lib/tls/sse2/libjli.so
10692: trying file=/lib/tls/libjli.so
10692: trying file=/lib/i686/sse2/libjli.so
10692: trying file=/lib/i686/libjli.so
10692: trying file=/lib/sse2/libjli.so
10692: trying file=/lib/libjli.so
10692: trying file=/usr/lib/tls/i686/sse2/libjli.so
10692: trying file=/usr/lib/tls/i686/libjli.so
10692: trying file=/usr/lib/tls/sse2/libjli.so
10692: trying file=/usr/lib/tls/libjli.so
10692: trying file=/usr/lib/i686/sse2/libjli.so
10692: trying file=/usr/lib/i686/libjli.so
10692: trying file=/usr/lib/sse2/libjli.so
10692: trying file=/usr/lib/libjli.so
24.01.10, Max Ivanov<ivanov.maxim на gmail.com> написал(а):
> Почему-то javac (от sun) будучи поставленным в hasher не видит
> libjli.so, в хост системе все ок. Ничего не понимаю :)
>
> [builder на rbnote bin]$ readelf -a ./javac |grep jli
> 0x00000001 (NEEDED) Shared library: [libjli.so]
> 0x0000000f (RPATH) Library rpath:
> [$ORIGIN/../lib/i386/jli:$ORIGIN/../jre/lib/i386/jli]
> 0x0030: Version: 1 File: libjli.so Cnt: 1
>
> При этом strace javac не показывает даже попыток поиска по rpath,
> только стандартные пути =(
>
> Вопрос стандартный, где подкрутить, чтобы заработало?
>
Подробная информация о списке рассылки Devel