gpt4 book ai didi

macos - 在 Mac OS X 中使用 OpenCV 创建项目 - 找不到 'opencv2/opencv.hpp' 文件

转载 作者:太空宇宙 更新时间:2023-11-03 21:04:02 24 4
gpt4 key购买 nike

我写了一个简单的 opencv 项目,只包含一个 main.cpp 文件:

// main.cpp
#include <opencv/cv.h>
#include <opencv2/opencv.hpp>
int main()
{
cv::Mat I = cv::imread("img.png");
cv::imshow("img",I);
cv::waitKey(0);
return 0;
}

然后为了构建它,我写了一个这样的CMakeLists.txt,它实际上是从http://docs.opencv.org/doc/tutorials/introduction/linux_gcc_cmake/linux_gcc_cmake.html复制过来的。

cmake_minimum_required(VERSION 2.8)
project( DisplayImage )
find_package( OpenCV REQUIRED )
add_executable( DisplayImage main.cpp )
target_link_libraries( DisplayImage ${OpenCV_LIBS} )

在终端中,我首先运行了 cmake . 并生成了一个 Makefile。然后我运行 make 并得到以下错误:

fatal error: 
'opencv2/opencv.hpp' file not found
#include <opencv2/opencv.hpp>
^
......

编译器似乎找不到 OpenCV include 目录。但我不知道在哪里将它添加到 CMakeLists.txt。我的平台是Mac OS X 10.10,并且已经在/usr/local/include/usr/local/lib 安装了OpenCV include 和lib 文件。但是,在 Ubuntu 中,编译器可以找到它并成功构建项目。

那么在 Mac OS X 中正确的 CMakeLists.txt 是什么?

最佳答案

我终于真正阅读了通过 MacPorts 安装的/opt/local/share/OpenCV/OpenCVConfig.cmake 的标题。要在外部项目中使用,它指示包括:

find_package(OpenCV REQUIRED)
include_directories(${OpenCV_INCLUDE_DIRS})
target_link_libraries(MY_TARGET_NAME ${OpenCV_LIBS})

(只需将 include_directories 添加到我的 CMakeLists.txt 即可为我解决此问题)

关于macos - 在 Mac OS X 中使用 OpenCV 创建项目 - 找不到 'opencv2/opencv.hpp' 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32187713/

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