2009-12-12 2 views

ответ

8

Пути файлов могут быть установлены явно при связывании с использованием параметра -L, а также переменной окружения LD_LIBRARY_PATH.

Есть также некоторые пути, жестко закодированные в компоновщике, с использованием параметра -L. Вы можете увидеть их с помощью следующей команды:

gcc -Xlinker -v 
4

Если это не стандартный путь (/lib, /usr/lib), вы можете указать местоположение с флагом компилятора. Для g++ это -L/some/path/lib. Если вы используете autotools, вы можете просто настроить с помощью LDFLAGS=-L/some/path/lib, если вам нужен конкретный путь. Если configure был спроектирован правильно для проекта, он должен иметь опцию --with-some-library=PATH, где вы также можете указать путь для этой библиотеки.

6

Посмотрите на /etc/ld.so.conf и файлы в каталоге /etc/ld.so.conf.d/ - там, где он установлен.

4

При связывании вам необходимо указать флаг -L, чтобы указать, где находится библиотека. Во время выполнения динамический компоновщик использует пути, указанные в «/etc/ld.so.conf», «/etc/ld.so.conf.d/*» и значение LD_LIBRARY_PATH.

3

«sudo ldconfig» обновляет кеш системы, если вы только что установили что-то новое.

Смежные вопросы