где вставить библиотеки, которые я устанавливаю сам?

В здании ffmpeg из источника, я получил следующую ошибку: ./configure --with-libcelt:

ERROR: libcelt not found

Итак, я перешел на http://www.celt-codec.org/downloads/, клонировал репо и ./autogen.sh; ./configure; make; make install; make check редактировал его.

Вернувшись к ffmpeg исходному каталогу, ./configure --with-libcelt снова дал ту же ошибку.

Я попробовал soft-linking /opt/celt/libcelt/celt.h в /usr/local/lib, но теперь я официально колочу в темноте.

Я думал, что /usr/local/lib - это каноническое место, где пакет ./configure будет искать библиотеку и что основного файла с именем .h eader будет достаточно, чтобы показать конфигуратор, где есть вещи. Какой правильный ответ?

0
задан 24 August 2017 в 22:37

2 ответа

Файлы заголовков, среди прочего, сообщают компилятору, какие функции, значения и т. д. существуют в библиотеке. Просто потому, что вы указываете на заголовочный файл, это не значит, что компоновщик будет знать, где искать соответствующую библиотеку. /usr/lib и /usr/local/lib обычно используются при установке сторонних программ. Теперь /opt обычно используется для разворачивания программ в одну папку.

Из того, что я вижу, у вас есть celt в папке /opt/celt. Ищите там файл, который выглядит примерно как libcelt.so. То есть вам нужно указать на ссылку. Предполагая, что файл находится где-то там, вы можете указать компоновщику, чтобы посмотреть в эту папку, обновив переменную пути библиотеки как таковую:

export LD_LIBRARY_PATH=/opt/celt:$LD_LIBRARY_PATH

Затем запустите свою конфигурацию и создайте сценарии снова. Возможно, вам потребуется начать чистую установку.

0
ответ дан 18 July 2018 в 07:57

Файлы заголовков, среди прочего, сообщают компилятору, какие функции, значения и т. д. существуют в библиотеке. Просто потому, что вы указываете на заголовочный файл, это не значит, что компоновщик будет знать, где искать соответствующую библиотеку. /usr/lib и /usr/local/lib обычно используются при установке сторонних программ. Теперь /opt обычно используется для разворачивания программ в одну папку.

Из того, что я вижу, у вас есть celt в папке /opt/celt. Ищите там файл, который выглядит примерно как libcelt.so. То есть вам нужно указать на ссылку. Предполагая, что файл находится где-то там, вы можете указать компоновщику, чтобы посмотреть в эту папку, обновив переменную пути библиотеки как таковую:

export LD_LIBRARY_PATH=/opt/celt:$LD_LIBRARY_PATH

Затем запустите свою конфигурацию и создайте сценарии снова. Возможно, вам потребуется начать чистую установку.

0
ответ дан 24 July 2018 в 18:56

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

Похожие вопросы: