如何在CMake Makefile中包含OpenCV库

Mar*_*net 10 opencv osx-leopard cmake

我希望你能帮助我.

我有一个简单的CMakeLists.txt,以便在Leopard 10.5.8上构建我的项目.我正在使用CMake 2.8.1,目前这是代码:

cmake_minimum_required(VERSION 2.8)
MESSAGE(STATUS "./src: Going into utils folder")
ADD_SUBDIRECTORY(utils)
MESSAGE(STATUS "./src: utils folder processed")

include_directories(${DIR}/headers)
link_directories (${DIR}/src/utils)

ADD_EXECUTABLE(sample sample.cpp)
TARGET_LINK_LIBRARIES(sample libSample ${EXTERNAL_LIBS})
INSTALL(TARGETS sample DESTINATION "./src")
MESSAGE(STATUS "./src: exiting src folder")
Run Code Online (Sandbox Code Playgroud)

我需要在我的项目中添加OpenCV库.当我使用Eclipse时,我将include路径设置为/ opt/local/include,并将库路径设置为:/ opt/local/lib,然后指定库名称,例如_ opencv_core,opencv_imgproc,opencv_video.

你能告诉我如何在CMakeLists.txt文件中添加这些信息吗?

我已经阅读了官方cmake常见问题解答中的一些信息,但我无法解决我的问题.

请帮我.

非常感谢.

ltc*_*ltc 24

您需要在TARGET_LINK_LIBRARIES命令中添加库名称,但是您需要添加它们而不使用lib前缀.例如:

include_directories(${DIR}/headers /opt/local/include)
link_directories (${DIR}/src/utils /opt/local/lib)

ADD_EXECUTABLE(sample sample.cpp)
TARGET_LINK_LIBRARIES(sample opencv_core opencv_imgproc opencv_video ${EXTERNAL_LIBS})
Run Code Online (Sandbox Code Playgroud)