在mingw编译opencv遇到的问题

在mingw编译opencv遇到下面的报错
CMake Error at modules/world/cmake_install.cmake:45 (file):
file INSTALL cannot find
"D:/opencv/opencv-4.5.2/build/3rdparty/ffmpeg/opencv_videoio_ffmpeg_64.dll":
No error.
Call Stack (most recent call first):
modules/cmake_install.cmake:75 (include)
cmake_install.cmake:105 (include)
mingw32-make: *** [Makefile:129: install] Error 1

img

【以下回答由 GPT 生成】

对于这个报错,有几种可能的解决方案:

  1. 检查指定路径下的文件是否存在

首先,确保 "D:/opencv/opencv-4.5.2/build/3rdparty/ffmpeg/opencv_videoio_ffmpeg_64.dll" 文件确实存在于指定的路径下。你可以使用文件管理器或命令行来确认该文件是否存在。

  1. 检查文件命名是否正确

确保文件名的大小写和拼写与报错信息完全相符。在Windows中,文件名是不区分大小写的,所以请确保你在路径中正确指定了文件名。

  1. 配置环境变量

如果文件是存在的,但报错仍然出现,可能是因为系统环境变量没有正确配置。你可以尝试将 "D:/opencv/opencv-4.5.2/build/3rdparty/ffmpeg" 添加到系统的PATH环境变量中。

你可以按照以下步骤在Windows上配置环境变量:

  • 右键点击"计算机"或"此电脑",选择"属性"
  • 点击"高级系统设置"
  • 在弹出窗口的"高级"选项卡下,点击"环境变量"
  • 在"系统变量"(或用户变量)下找到"PATH"变量,并双击它
  • 在弹出窗口的"变量值"字段末尾添加";D:/opencv/opencv-4.5.2/build/3rdparty/ffmpeg"(注意使用正确的路径),然后点击"确定"保存修改

重新编译或运行你的项目,看看是否能够解决问题。

  1. 检查项目配置文件

如果以上解决方案都没有起作用,可能是你的项目配置文件中存在问题。确保你的项目配置文件中正确指定了动态链接库的路径。在你的CMakeLists.txt文件中,你应该有一个类似于下面的代码段:

set(OpenCV_DIR "D:/opencv/opencv-4.5.2/build")  # 设置OpenCV的路径
find_package(OpenCV REQUIRED)  # 查找OpenCV
include_directories(${OpenCV_INCLUDE_DIRS})  # 包含OpenCV的头文件路径
target_link_libraries(your_project_name ${OpenCV_LIBS})  # 链接OpenCV的库文件

确保上述代码中的路径都正确,重新运行CMake来生成新的Makefile,并重新编译你的项目。

如果以上解决方案都没有解决你的问题,可能是你的环境或配置存在其他问题。建议你仔细检查你的编译环境和项目配置,确保没有遗漏或错误的地方。如果问题仍然存在,你可能需要寻求更专业的支持,比如在相关的论坛或社区寻求帮助。


如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^