2015-04-24 2 views
0

Я пытаюсь запустить pkg-config на моем 64-битном элементарном (ubuntu 14.04) из приложения .net gui, и он говорит, что он не находит мои пакеты, которые обнаруживаются при выполнении точной команды с терминала.Как pkg-config решает, какой путь поиска добавить по умолчанию?

Для справки, вот команда:

pkg-config --cflags --libs glib-2.0 gobject-2.0 

Используя PKG_CONFIG_DEBUG_SPEW мне удалось получить подробную информацию отладки для PKG-конфигурации, и это выглядит, как он инициализирует себя по-разному в двух случаях.

Инициализация в .net графического интерфейса приложения:

Adding directory '/usr/share/pkgconfig' from PKG_CONFIG_PATH 
Adding directory '/usr/lib/pkgconfig' from PKG_CONFIG_PATH 

Инициализация в терминале:

Adding directory '/usr/local/lib/x86_64-linux-gnu/pkgconfig' from PKG_CONFIG_PATH 
Adding directory '/usr/local/lib/pkgconfig' from PKG_CONFIG_PATH 
Adding directory '/usr/local/share/pkgconfig' from PKG_CONFIG_PATH 
Adding directory '/usr/lib/x86_64-linux-gnu/pkgconfig' from PKG_CONFIG_PATH 
Adding directory '/usr/lib/pkgconfig' from PKG_CONFIG_PATH 
Adding directory '/usr/share/pkgconfig' from PKG_CONFIG_PATH 

Конечно мои библиотеки определены в недостающей каталоге «/ USR/Lib/x86_64-Linux-гну/pkgconfig ', который не добавлен в .net-приложение gui.

Почему две инициализации разные?

Как я могу сказать pkg-config, чтобы инициализировать то же самое, что и в терминале?

Примечание: Я знаю, что я могу установить PKG_CONFIG_PATH перед вызовом PKG-конфигурации, но я предпочел бы более простое решение, если доступно.

ответ

0

Примечание: Я знаю, что я могу установить PKG_CONFIG_PATH перед вызовом PKG-конфигурации, но я предпочел бы более простое решение, если доступно.

Нет, вот как это сделать. Тем не менее, как /usr/share/pkgconfig, так и /usr/lib/pkgconfig уже находятся в вашем пути поиска, поэтому я не уверен, чего вы надеетесь достичь.

+0

Я не понимаю, почему мне нужно установить 'PKG_CONFIG_PATH' при вызове' pkg-config' из моих .net-приложений, пока все работает нормально с терминала. –

+0

Как я уже сказал, pkg-config при вызове из вашего приложения уже ищет оба пути, которые он ищет в командной строке, поэтому вы этого не делаете. Однако установка переменной окружения PKG_CONFIG_PATH является ответом на ваш вопрос («Как pkg-config решает, какой путь поиска добавить по умолчанию?»). Похоже, вы задаете неправильный вопрос, но вы не предоставляете достаточной информации, чтобы знать, в чем проблема. – nemequ

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

  • Нет связанных вопросов^_^