cmake PKG_CONFIG_PATH找不到所需的程序包

svmlkihl  于 11个月前  发布在  其他
关注(0)|答案(1)|浏览(162)

我想链接我的C++应用程序与任何库,例如与libavcodec.so我尝试Method I

set(CMAKE_PREFIX_PATH ${pkgconfig_path})

但当我试图建立

cmake -S Qt_FFMpeg/src/ -B Qt_FFMpeg/build-host/ --fresh

我收到错误“A required package was not found”
好吧,我试试Method II

set(ENV{PKG_CONFIG_PATH} ${pkgconfig_path})

而且很有效。为什么方法一不起作用?完整代码here
我用的是Ubuntu 22 x86_64,cmake 3.26.4

vhmi4jdf

vhmi4jdf1#

谢谢@Tsyvarev
使用环境变量

cmake_path(SET pkgconfig_path "${CMAKE_CURRENT_LIST_DIR}/../../FFMpeg_themself/ffmpeg_build/lib/pkgconfig/" NORMALIZE)
set(ENV{PKG_CONFIG_PATH} ${pkgconfig_path})
message("I found $ENV{PKG_CONFIG_PATH}")

没有环境变量

cmake_path(SET pkgconfig_path "${CMAKE_CURRENT_LIST_DIR}/../../FFMpeg_themself/ffmpeg_build/" NORMALIZE)
set(CMAKE_PREFIX_PATH ${pkgconfig_path})
message("I found ${CMAKE_PREFIX_PATH}")

相关问题