c++ - opencv 项目中的 CMakeLists.txt 出错

标签 c++ opencv cmake

我正在用 C++ 开始一个 opencv 项目,我认为这将是学习一些 cmake 的好机会。这是我的项目雇佣制度:

project/
|__include/
   |__sample1.h
   |__sample2.h
|__build/
|__doc/
|__src/
   |__sample1.cpp
   |__sample2.cpp
|__test/
   |__main.cpp
|__CMakeLists.txt

CMakeLists.txt 是:

CMAKE_MINIMUM_REQUIRED( VERSION 2.8 )

SET( PROJ_NAME      "Project" )
SET( PROJ_PATH      ${CMAKE_SOURCE_DIR} )
SET( PROJ_OUT_PATH  ${CMAKE_BINARY_DIR} )
SET( PROJ_LIBRARIES ${OpenCV_LIBS} )
SET( PROJ_INCLUDES  "include" )

FILE( GLOB_RECURSE PROJ_SOURCES src/*cpp test/*cpp )
FILE( GLOB_RECURSE PROJ_HEADERS include/${PROJ_NAME}/*.h )

PROJECT( ${PROJ_NAME} )
FIND_PACKAGE( OpenCV REQUIRED )
INCLUDE_DIRECTORIES( ${PROJ_INCLUDES} )
ADD_EXECUTABLE( ${PROJ_NAME} ${PROJ_SOURCES} )
TARGET_LINK_LIBRARIES( ${PROJ_NAME} ${PROJ_LIBRARIES} )

makefile 已生成,但是当我执行“make”时,我有一些对 opencv 函数的“ undefined reference ”。

如有任何帮助,我们将不胜感激,当然,如果您需要更多信息,请直接询问 :)

谢谢

最佳答案

SET( PROJ_LIBRARIES ${OpenCV_LIBS} )

OpenCV_LIBS 将在您使用 find_package() 搜索包后设置。

您还需要将 header 添加到 add_executable()。

关于c++ - opencv 项目中的 CMakeLists.txt 出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26765892/

相关文章:

android - 如何用 c++_static 重建 OpenCv?

c++ - 如何使用 cmake 在 C++ 中包含外部库

c++ - Cmake 的定义问题

c++ - 安全地以模块化方式乘以无符号整数的最佳 C++ 方法是什么?

c++ - 我可以从 boost 的 weak_ptr 获得原始指针吗?

c++ - 如何在 Visual C++ 2010 Express 中链接 OpenGl?

wpf - 在其他元素后面订购2d/3d对象

c++ - 访问 cv::Mat 的元素

cmake - cmake 与 ccache 交叉编译时 ar 和 strip 不正确

c++ - 存储大小未知