Версия библиотеки времени выполнения отличается от версии сборки

Поэтому я создаю простую программу на C с -libconfig а также -L /usr/lib64/

что-то вроде:clang *.c -o app -L /usr/lib64/ -lconfig

Я использую centos6 и получил библиотеку здесь /usr/lib64/libconfig.so.8

Он все прекрасно строит, но когда я запускаю его, я получаю это:error while loading shared libraries: libconfig.so.9: cannot open shared object file: No such file or directory

Очевидно, он ищет большую версию библиотеки, но я не могу объяснить, почему. Просто установка / обновление libconfig.so.9 также не вариант.

Обновить

Я воспользовался советом из комментариев и удалил ненужное -L параметр, но это ничего не изменило. Я все еще получаю ту же ошибку.
$ ll -s /usr/lib64/libconf* 0 lrwxrwxrwx. 1 root root 18 Dec 15 2015 /usr/lib64/libconfig.so -> libconfig.so.8.0.0 0 lrwxrwxrwx. 1 root root 20 Dec 15 2015 /usr/lib64/libconfig++.so -> libconfig++.so.8.0.0 0 lrwxrwxrwx. 1 root root 18 Dec 15 2015 /usr/lib64/libconfig.so.8 -> libconfig.so.8.0.0 0 lrwxrwxrwx. 1 root root 20 Dec 15 2015 /usr/lib64/libconfig++.so.8 -> libconfig++.so.8.0.0 44 -rwxr-xr-x. 1 root root 41960 Aug 19 2010 /usr/lib64/libconfig.so.8.0.0 88 -rwxr-xr-x. 1 root root 87408 Aug 19 2010 /usr/lib64/libconfig++.so.8.0.0

ldconfig -v | grep libconfig libconfig.so.8 -> libconfig.so.8.0.0 libconfig++.so.8 -> libconfig++.so.8.0.0

Эти строки выглядят очень обычными и хорошо для меня. До сих пор нет понятия.

0 ответов

Другие вопросы по тегам