Libtool считает, что библиотека была перемещена, но это не так

В настоящее время я перекомпилирую gtk+ и зависимости из исходников (у меня нет другого выбора).

Все мои пользовательские пакеты устанавливаются в определенную пользовательскую точку (назовем ее /packages) (это может показаться странным, но на этот раз у меня снова нет другого выбора).

Когда я пытаюсь перекомпилировать pango, ему нужен freetype. Freetype уже установлен в /packages/freetype/2.1.10/amd64-linux (lib, include... находятся в этом каталоге) и задан другой путь конфигурации (LD_LIBRARY_PATH, LIBRARY_PATH, CPLUS_INCLUDE_PATH, INCLUDE_PATH, PKG_CONFIG_PATH). конфигурация панго работает хорошо. Он находит freetype и генерирует Makefile. Когда я пытаюсь сделать, я получаю следующую ошибку:

libtool: link: warning: library `/packages/freetype/2.1.10/amd64-linux//lib/libfreetype.la' was moved.
grep: /usr/local/lib/libfreetype.la: No such file or directory

У libtool проблема с моей библиотекой (но libfreetype.la существует в каталоге /packages/freetype/2.1.10/amd64-linux//lib/ и проблем с доступом нет). Поэтому libtool пытается найти его в «классических местах», таких как /usr/..., и не находит.

Вначале я подумал, что libtool запутался с двумя косыми чертами (вероятно, из-за ошибки в флаге --prefix во время компиляции freetype), поэтому я перекомпилировал freetype без опечатки, но это ничего не изменило.

У кого-нибудь есть идея помочь мне? Я никогда раньше не использовал libtool в своих личных проектах, поэтому я не знаю, есть ли способ решить это странное поведение... (Возможно, это не имеет значения, но libtool версии 1.5.22)

Заранее спасибо.


person ThR37    schedule 01.10.2010    source источник


Ответы (1)


Вы заглянули внутрь файла libfreetype.la? Файлы Libtool .la — это просто текстовые файлы, описывающие библиотеки. По умолчанию они закомментированы. Найдите настройки libdir и dependency_libs и проверьте, указывают ли они на нужные места.

person Fred Foo    schedule 01.10.2010
comment
Спасибо за помощь ! Проверив вручную файлы .la всех зависимостей, мне удалось решить проблему, заменив вхождения /usr/local/lib/libfreetype.la правильным. Я не знал, что файл .la, где просто файл конфигурации для связывания... - person ThR37; 01.10.2010