Temporären Pfad zu pkg-config im CMake-Skript hinzufügen?
Für externe Bibliotheken kann der Benutzer einen nicht standardmäßigen Speicherort angeben, indem er den Pfad zum Pfad hinzufügtCMAKE_FLAGS
oder durch Hinzufügen-DMYLIB_ROOT
. Innerhalb des CMake-Skripts möchte ich die pkg-config-PC-Datei der Bibliothek finden. Da sich die PC-Datei nicht im Standardordner befindet, wird sie von pkg-config mit nicht gefundenFindPkgConfig
'spkg_search_module
.
Ich habe versucht, den vom Benutzer angegebenen Pfad zum hinzuzufügenPKG_CONFIG_PATH
aber es schien ignoriert zu werden:
include(FindPkgConfig)
set(PKG_CONFIG_PATH "${PKG_CONFIG_PATH}:${MYLIB_ROOT}/lib/pkgconfig")
pkg_search_module(PKG_MYLIB mylib)
if(${PKG_MYLIB_FOUND})
...
Beim Aufrufen von pkg-config vom Terminal mit dem geändertPKG_CONFIG_PATH
gesetzt, findet es die pc datei. Was mache ich falsch? Wie bekomme ichpkg_search_module
Arbeiten? Ich möchte vermeiden, pkg-config direkt von CMake aufzurufen.