gpt4 book ai didi

c++ - cmake 在 opencv c++ 项目中不工作

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:47:44 26 4
gpt4 key购买 nike

我需要你的帮助!我在这个链接中有这个 C++ 代码

[链接] https://github.com/royshil/FoodcamClassifier

两天以来我一直在尝试编译它,但我失败了他们说我必须使用 cmake,我已经尝试过“GUI 版本,它给了我与 cmake 本身相关的错误。所以我拿了 cpp 和头文件并创建了一个新项目,但我现在有 100 个与 opencv 库相关的错误,我向上帝发誓我确定我的项目中包含文件夹和它的库!不知道怎么回事!

有什么想法吗?

这是错误:

'CMake Error: Unable to open cache file for save. C:/Program Files/CMake 2.8/bin/CMakeCache.txtCMake Error at CMakeLists.txt:4 (FIND_PACKAGE):  Could not find module FindOpenCV.cmake or a configuration file for package  OpenCV.  Adjust CMAKE_MODULE_PATH to find FindOpenCV.cmake or set OpenCV_DIR to the  directory containing a CMake configuration file for OpenCV.  The file will  have one of the following names:    OpenCVConfig.cmake    opencv-config.cmakeOpenCV_DIR-NOTFOUNDConfiguring incomplete, errors occurred!CMake Error: Unable to open cache file for save. C:/Program Files/CMake 2.8/bin/CMakeCache.txtCMake Error: : System Error: Permission deniedCMake Error: : System Error: Permission denied '

最佳答案

所以,这就是为我解决这个问题的原因。

首先,如果有疑问 - 始终记得在尝试添加其他路径/值/mod 之前清除您的 CMake“缓存”。我知道这似乎有点奇怪,但以前尝试解决问题的遗留问题可能掩盖了真正的问题。最简单的方法是从 orbit 中删除你的源外“构建”目录(唯一可以确定的方法),然后再试一次......

其次,也是更根本的,您的目标编译器和架构是什么,您下载的 OpenCV 版本提供了什么?例如,截至编写 OpenCV 3.1 时我下载的预构建安装程序提供了 ~\build\x64\vc12 & vc14 - 这当然是针对 VisualStudio 2012 和 2014 构建的。

我正在使用 Mingw 并以 x86 为目标 - 所以我下载了源代码(通过 github 发布作为 *.zip 文件)并从 \opencv 中执行了这些步骤文件夹:

mkdir build
cd build
cmake -G "MinGW Makefiles" ..
cmake --build .
cmake --build . --target install

您当然可以通过各种开关控制构建,还可以指定安装位置。

执行“安装”步骤 - 默认情况下是将最终库等复制到名为“安装”的文件夹中 - 是关键,因为它正确地将所有生成的库和文件放在正确的位置并包括神奇的顶部的 OpenCVConfig.cmake 文件。

因此,我终于可以指向我的项目 CMakeLists.txt 文件来解析 OpenCV:

set("OpenCV_DIR" "C:/Code/opencv/build/install")

find_package( OpenCV REQUIRED )

并且,确保生成的可执行文件知道 *.dll 的:

PATH=%PATH%;C:\Code\opencv\build\install\x86\mingw\bin

关于c++ - cmake 在 opencv c++ 项目中不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9742052/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com