我认为这是创建使用OpenCV库的项目的基本步骤,因此您无需手动包含所有库。没有关于这个主题的详细信息,至少对于想要尽快使用OpenCV的新手来说,所以:
使用Cmake创建多平台c ++ OpenCV的最简单且可扩展的方法是什么?
答案 0 :(得分:28)
首先:创建一个文件夹项目,其中包含两个子文件夹 src 和包含,以及一个名为的CMakeLists.txt 强>
第二:将您的cpp放在src文件夹中,并将标题放在包含文件夹中。
第三:您的CMakeLists.txt应如下所示:
cmake_minimum_required(VERSION 2.8)
PROJECT (name)
find_package(OpenCV REQUIRED )
set( NAME_SRC
src/main.cpp
)
set( NAME_HEADERS
include/header.h
)
INCLUDE_DIRECTORIES( ${CMAKE_CURRENT_SOURCE_DIR}/include )
link_directories( ${CMAKE_BINARY_DIR}/bin)
set(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin)
add_executable( name ${NAME_SRC} ${NAME_HEADERS} )
target_link_libraries( sample_pcTest ${OpenCV_LIBS} )
第四:打开CMake GUI并选择根文件夹作为输入,并为输出创建一个构建文件夹。单击configure,然后生成,然后选择生成器(VisualStudio,Eclipse,...)
答案 1 :(得分:8)
我正在使用opencv3.0和cmake3.8, 以下配置为我工作!
######## A simple cmakelists.txt file for OpenCV() #############
cmake_minimum_required(VERSION 2.8) # 初始化Cmake版本检测
PROJECT(word) # 工程名
FIND_PACKAGE( OpenCV REQUIRED ) # 环境变量中寻找OpenCV的库的位置
INCLUDE_DIRECTORIES( ${OpenCV_INCLUDE_DIRS} )
ADD_EXECUTABLE(word main.c) # 将文件加入工程,有多少.c或者cpp都加进去
TARGET_LINK_LIBRARIES (word ${OpenCV_LIBS}) # 这两行的次序也不能变!加入动态链接库
########### end ####################################