opencv 删除重装ffmpeg

本文记录了因ffmpeg安装导致opencv程序编译失败的问题及其解决过程。通过卸载并清除配置,重新编译安装opencv,最终解决了该冲突。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  昨天为了试用一个用到VideoCapture的c++类的程序,下载安装了ffmpeg,( 是一个开源免费跨平台的视频和 音频流 方案, 包含了非常先进的音频/视频编解码库libavcodec ),安装以后我以前的opencv程序就全部编译错误。为了解决在这个问题我把能卸的都卸了,包括opencv和ffmpeg。现记录过程如下:
        1、 查看系统中已安装软件包信息 dpkg -l  
      2、 卸载并清除配置 apt-get remove --purge softname1  //卸载ffmpeg及opencv的所有安装包
      3、重新编译opencv       apt-cache search opencv
                                   apt-get install XXX XXX XXX
     usr/include/下出现opencv  OK安装成功,可以找个程序编译一下了!

ps: 安装软件 apt-get install softname1 softname2 softname3……
        卸载软件 apt-get remove softname1 softname2 softname3……
        卸载并清除配置 apt-get remove --purge softname1
        更新软件信息数据库 apt-get update
        进行系统升级 apt-get upgrade
        搜索软件包 apt-cache search softname1 softname2 softname3……
        安装deb软件包 dpkg -i xxx.deb
        删除软件包 dpkg -r xxx.deb
        连同配置文件一起删除 dpkg -r --purge xxx.deb
        查看软件包信息 dpkg -info xxx.deb
        查看文件拷贝详情 dpkg -L xxx.deb
        查看系统中已安装软件包信息 dpkg -l
        重新配置软件包 dpkg-reconfigure xxx
### 解决 OpenCV 编译链接失败的方法 #### 1. 下载缺失的依赖文件 当使用 CMake 编译 OpenCV 时,可能会遇到某些第三方库(如 `opencv_ffmpeg.dll`)下载失败的情况。这通常是因为网络连接问题或资源不可用所致。为了修复此问题,可以手动下载这些文件并放置在适当的位置。 对于每一个未成功下载的文件,在构建目录下找到名为 `CMakeDownloadLog.txt` 的日志文件[^3]。该文件记录了所有尝试下载的内容及其对应的 URL 地址。通过访问这些URL来获取所需的二进制文件,并将其保存至源码树中的相应位置或者指定给环境变量以便于链接器查找。 #### 2. 配置正确的编译选项 确保选择了适合当前开发平台和工具链设置的最佳配置参数。例如,在 Windows 上使用 Visual Studio 进行编译时应注意不同版本间的兼容性;而在 Linux 或 macOS 平台上则需关注特定发行版所支持的功能特性差异[^2]。 此外,如果是在跨平台上部署项目,则建议采用预编译好的二进制包而不是自行编译整个框架以减少潜在的风险因素。 #### 3. 清理旧的构建数据并重试 有时之前的不完全安装会干扰新的编译过程。因此推荐先清理掉已有的 build 文件夹再重新执行 cmake 命令: ```bash rm -rf build/ mkdir build && cd $_ cmake .. make -j$(nproc) ``` 上述命令序列首先删除现有的构建产物(`build/`),接着创建一个新的同名空目录用于存放新产生的中间件与最终输出物。最后调用 make 工具完成实际组装工作的同时利用多线程加速处理速度。 #### 4. 设置包含路径和库路径 针对 Qt Creator 用户或其他 IDE 中可能出现无法识别头文件或静态/动态链接错误的情形,应当正确设定项目的 INCLUDE 和 LIBRARY 路径指向本地安装的 OpenCV 库所在之处。具体做法如下所示: ```qmake INCLUDEPATH += /path/to/opencv/include \ /path/to/opencv/include/opencv \ /path/to/opencv/include/opencv2 LIBS += -L/path/to/opencv/lib -lopencv_core -lopencv_imgcodecs ... ``` 以上 qmake 片段展示了如何向 QMake 构建系统传递额外的信息使得它能够顺利定位到必要的接口定义以及实现部分[^4]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值