opencv cmake找不到ffmpeg动态包的问题
来源:互联网 发布:mac系统重装的网络加速 编辑:程序博客网 时间:2024/06/08 01:25
前些日子手动编译opencv模块的时候,一直提示找不到ffmpeg libs (例如 libswscale , libavformat 等库)。 奇怪,明明我源码安装了 ffmpeg,但为什么还是找不到呢。
通过cmake的 的脚本,阅读了下cmake的一些脚本,终于找到了原因并解决。 opencv的cmake脚本使用了 CHECK_MODULE 宏, 而这个宏又调用了 pkg_check_module 宏。(此宏的定义在 /usr/share/cmake/FindPkgConfig.cmake)。 pkg_check_module中需要通过 pkg-config 命令来查找是否有对应的package 模块。 所以我们也需要安装 pkg-config 软件包。 那么pkg-config 又是如何来知道我们的系统是否安装了某个模块呢? pkg-config是通过 *.pc 的文件来判断。 例如 如果pkg-config找到了 libswscale2.11.pc 则就说明我们有 libswscale 2.11 库。
而 libswscale2.11.pc 里则定义了 header和lib的目录位置。
所以问题来了,我明明通过源码的方式安装了,但是还是提示找不到呢。 原来是 pkg-config 寻找 pc文件目录的问题。
默认pkg-config(笔者的安装版本) 只会寻找 /usr/share/pkgconfig/*.pc 和 /usr/lib/pkgconfig/*.pc , /usr/lib64/pkgconfig/*.pc 。 而我通过源码方式安装的时候, 对应的库的pc文件 默认安装到了 /usr/local/lib/pkgconfig/。 所以pkg-config找不到,也就认为没有安装了。 经过笔者测试,如果通过 yum 安装的方式,则pc文件会放到 /usr/lib 或者 /usr/lib64/ 里,所以就没有这个问题。
解决方法:
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig;$PKG_CONFIG_PATH
这样export下,就没有问题了。
- opencv cmake找不到ffmpeg动态包的问题
- CMake找不到opencv库解决办法
- 魔改Cmake系列:编译caffe的时候找不到OpenCV
- cmake重编译opencv遇到的问题
- cmake OpenCV遇到的一些问题
- 安装opencv时cmake的问题
- HTTPClient找不到包的问题
- cmake opencv 路径问题
- 安装cmake时包的依赖问题
- 如何解决cmake时找不到某个库的问题
- 解决找不到 opencv lib的问题
- 【Opencv】通过CMake编译Opencv,开启ippicv、tbb、ffmpeg功能
- opencv cmake 安装使用问题
- 一个maven找不到依赖包的问题
- cmake,ros,c++和opencv经常出现的问题总结
- cmake编译opencv时关于cuda的问题
- 【slam初探】安装opencv中遇到的问题(cmake)
- ARM opencv 找不到动态链接库的解决
- openwrt 机器检测不是是重启成功的js
- c++学习网站
- Fiddler抓包工具
- 各种嵌入式操作系统介绍
- AWS、Azure、Google云 谁的免费层更好?
- opencv cmake找不到ffmpeg动态包的问题
- LeetCode:Remove Duplicates from Sorted Array
- 自定义校验型注解
- 消息认证码MAC-Message Authentication Code
- 大白话讲解Promise(一)
- js实现滑动门效果
- VisualStudio2015密钥
- [python3教程]第十二章.虚拟环境和程序集(VIRVUAL ENVIRONMENTS AND PACKAGES)
- Codeforecs 785C Anton and Fairy Tale 数学+二分