Какова цель файла конфигурации?

Я пытаюсь установить opencv в моей системе, перейдя по этой ссылке. В нем говорится, что после установки нам нужно выполнить некоторую настройку, открыв

/etc/ld.so.conf.d/opencv.conf

и введя определенный адрес. А затем в другом

/etc/bash.bashrc

мы пишем

PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
export PKG_CONFIG_PATH

Было бы здорово, если бы кто-то мог объяснить, как это помогает процессу.

0
задан 18 November 2012 в 22:54

1 ответ

Вы рассказываете различным частям системы, как найти библиотеки поддержки opencv.

Что делает код

В инструкциях, которые вы цитируете, сказано добавить следующую строку в /etc/ld.so.conf.d/opencv.conf:

/usr/local/lib

Уведомление что /usr/local также есть в конфигурации bash. Когда вы создаете приложение из исходного кода, каталог установки по умолчанию находится в поддереве / usr / local. Две упомянутые вами части конфигурации предназначены для того, чтобы убедиться, что остальная часть операционной системы знает, что искать в / usr / local / ... в дополнение к другим обычным местам, для различных библиотек и т. Д. Если вы должны были установить в в другом месте, скажем, / usr или / opt, вы хотите изменить все эти пути соответствующим образом.

Зачем беспокоиться?

/etc/ld.so.conf (и /etc/ld.so.conf.d) должны рассказать ld.so ( 8) где найти общие библиотеки. Поскольку opencv устанавливается в / usr / local / ..., нам нужно, чтобы ld.so заглянул в / usr / local / lib, чтобы найти библиотеки поддержки приложения. Аналогично для pkgconfig, мы должны быть уверены, что приложение pkg-config может найти файлы поддержки.

Вам нужно сделать это?

Теперь вам, возможно, не нужно вносить изменения, предложенные в документации. Если вы посмотрите на другие файлы в /etc/ld.so.conf.d, вы можете обнаружить, что другой файл уже включает / usr / local / lib:

grep /usr/local/lib /etc/ld.so.conf.d/*

В моей системе это возвращает [ 1115]

/etc/ld.so.conf.d/libc.conf:/usr/local/lib

Поскольку это здесь, мне не нужно было бы второй записи, хотя это безопасно сделать дважды. Вам также может не потребоваться установка PKG_CONFIG, поскольку страница руководства pkg-config (1) гласит:

В большинстве систем pkg-config выглядит в / usr / lib / pkgconfig, / usr / share / pkgconfig, / usr / local / lib / pkgconfig и / usr / local / share / pkgconfig для этих файлов.

0
ответ дан 18 November 2012 в 22:54

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

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