Для внешних библиотек пользователь может указать нестандартное местоположение, добавив путь к CMAKE_FLAGS
или добавив -DMYLIB_ROOT
. В сценарии CMake я хочу найти файл pkg-config библиотеки. Поскольку файл pc не находится в стандартной папке, он не найден pkg-config с FindPkgConfig
pkg_search_module
.Добавить временный путь к pkg-config в сценарии CMake?
Я пытался добавить пользовательскую данный путь к PKG_CONFIG_PATH
, но, казалось, игнорировали:
include(FindPkgConfig)
set(PKG_CONFIG_PATH "${PKG_CONFIG_PATH}:${MYLIB_ROOT}/lib/pkgconfig")
pkg_search_module(PKG_MYLIB mylib)
if(${PKG_MYLIB_FOUND})
...
Когда я называю PKG-конфигурации из терминала с модифицированным PKG_CONFIG_PATH
набора, это найти файл ПК , Что я делаю не так? Как я могу получить pkg_search_module
? Я хотел бы избежать вызова pkg-config непосредственно из CMake.
Вы правы, это путь, когда CMake 3.0 или старше используется. С 3.1 он будет включен автоматически. – usr1234567
Кажется, это единственное решение, которое работает для меня ... –