gpt4 book ai didi

C++ OpenCV 包含错误 'file not found'

转载 作者:行者123 更新时间:2023-11-28 01:15:11 24 4
gpt4 key购买 nike

我在 C++ 中使用 OpenCV 4.1.2 时遇到问题。我有这个 CMakelists.txt :

cmake_minimum_required(VERSION 2.8.12)
project( Barcode-cpp )
find_package( OpenCV REQUIRED )
add_compile_options(-std=c++11)
add_library( src
src/VideoVeed.h
src/VideoVeed.cpp
)
add_executable( program
program/main.cpp
)
target_link_libraries( program
src
${OpenCV_LIBS}
)

如您所见,我有两个包含源代码的文件夹:

  • program包含 main.cpp
  • src包含 VideoVeed.h & VideoVeed.cpp

当我在 main.cpp 中包含 OpenCV 时像这样:<opencv2/opencv.hpp> ,它工作正常。但是当我包含 OpenCV (以相同的方式) 时,它会给出错误 fatal error: 'opencv2/opencv.hpp' file not found .

我想我的 CMakelists.txt 做错了什么,但我无法弄清楚到底是什么。

我希望有人能帮助我。提前致谢!

最佳答案

您应该添加行 target_include_directories(),以便 OpenCV 包含目录包含在您的可执行文件中:

add_executable( program
program/main.cpp
)
target_include_directories(program PRIVATE ${OpenCV_INCLUDE_DIR})

根据您使用的 OpenCV 版本,您可能需要 使用 OpenCV_INCLUDE_DIRS 代替:

add_executable( program
program/main.cpp
)
target_include_directories(program PRIVATE ${OpenCV_INCLUDE_DIRS})

编辑:OpenCV 4.1.2 填充变量OpenCV_INCLUDE_DIRS,所以这是您应该使用的变量。参见 this教程。

关于C++ OpenCV 包含错误 'file not found',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58934488/

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