У меня есть библиотека mpc
(и другие, но это пример), установленный в пользовательском каталоге:
user@host /my/software/prefix $ l usr/lib | grep mpc
lrwxrwxrwx 1 user group 15 Mar 5 21:08 libmpc.so -> libmpc.so.3.0.0
lrwxrwxrwx 1 user group 15 Mar 5 21:08 libmpc.so.3 -> libmpc.so.3.0.0
-rwxr-xr-x 1 user group 96K Mar 5 21:08 libmpc.so.3.0.0
Согласно этому вопросу, я могу получить местоположение библиотеки из флага компоновщика (-l<lib>
), выполнив что-то вроде:
ld -lmpc --verbose
LD_LIBRARY_PATH=/my/software/prefix/usr/lib ld -lmpc --verbose
Тем не менее, это оказывается пустым:
attempt to open /my/software/prefix/usr/x86_64-pc-linux-gnu/lib64/libmpc.so failed
attempt to open /my/software/prefix/usr/x86_64-pc-linux-gnu/lib64/libmpc.a failed
attempt to open /my/software/prefix/usr/lib/binutils/x86_64-pc-linux-gnu/2.2464/libmpc.so failed
attempt to open /my/software/prefix/usr/lib/binutils/x86_64-pc-linux-gnu/2.2464/libmpc.a failed
attempt to open /usr/local/lib64/libmpc.so failed
attempt to open /usr/local/lib64/libmpc.a failed
attempt to open /lib64/libmpc.so failed
attempt to open /lib64/libmpc.a failed
attempt to open /usr/lib64/libmpc.so failed
attempt to open /usr/lib64/libmpc.a failed
И он даже не ищет путь, предоставленный LD_LIBRARY_PATH
.
Что здесь не так?