pkg-config 找不到库的自定义构建

问题描述 投票:0回答:3

我一周前通过

apt
安装了ffmpeg4.2。该库安装在
/usr/lib/x86_64-linux-gnu
下。然后我意识到我想在 ffmpeg4.5 中测试我的代码,所以我从源代码构建了它并将其安装在
/home/xxx/ffmpeg_build/lib
下。我也做了
export PKG_CONFIG_PATH=/home/xxx/ffmpeg_build/lib/pkgconfig:$PKG_CONFIG_PATH

但是,pkg-config 找不到我希望它看到的 ffmpeg4.5。所以我用

pkg-config --variable=pc_path pkg-config
检查了 pc_path 变量,它给了我
/usr/local/lib/x86_64-linux-gnu/pkgconfig:/usr/local/lib/pkgconfig:/usr/local/share/pkgconfig:/usr/lib/x86_64-linux-gnu/pkgconfig:/usr/lib/pkgconfig:/usr/share/pkgconfig

我猜测 pkg-config 会去 /usr/local 查找

*.pc
文件,因此忽略我的自定义构建。有没有办法可以在前面附加我的自定义路径,以便 pkg-config 可以找到我首先从源代码构建的 ffmpeg4.5?

编辑: 我只记得 pkg-config 最初可以正确找到我从源代码构建的 ffmpeg4.5,但我对 OpenCV 设置做了

ldconfig -v
,然后它就停止工作了。

g++ pkg-config
3个回答
0
投票

将自定义库添加到动态链接器搜索路径。

1.) 添加新的conf文件

/etc/ld.so.conf.d/customlib.conf

2.) 插入:(假设您的lib位于目录/usr/local/ffmpeg45/lib中

/usr/local/ffmpeg45/lib

3.)运行

ldconfig -v 2>&1|grep -iv ffmpeg

应该可以工作


0
投票

我的最终工作是将 *.pc 文件中的所有配置手动解码为 g++ 命令。这绝对不理想,但对于我正在从事的一个小项目来说,它满足了我的需要


0
投票

生成的信息不正确后pkg配置无法安装,请尽快解决此问题。


问候, 马哈迈杜拉

© www.soinside.com 2019 - 2024. All rights reserved.