【发布时间】:2017-12-19 00:29:23
【问题描述】:
我目前正在做一个项目,我想添加 OpenCV。 我下载了opencv 3.3.1的预建库和最新版本的cmake。 此外,我在 x64 调试模式下在 Windows x64 操作系统上使用 Visual Studios 2017。
CMake 可以毫无错误地构建所有内容。 但是,当我想在 VS 中构建我的项目或调试时, 我收到一个致命的链接错误:
致命错误 LNK1104:无法打开文件 'C:\OpenCV 3.3.1\opencv\build\lib\Debug\opencv_world331d.lib'
所以我检查了 lib 文件的目录。 但是目录和lib文件都不存在。
我附在我的 CMakeLists.txt 下方:
SET( CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_CURRENT_SOURCE_DIR}" )
FIND_PACKAGE( KinectSDK2 REQUIRED )
INCLUDE_DIRECTORIES( ${KinectSDK2_INCLUDE_DIRS} )
LINK_DIRECTORIES( ${KinectSDK2_LIBRARY_DIRS} )
SET( CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}" )
FIND_PACKAGE( PCL 1.8.1 REQUIRED )
INCLUDE_DIRECTORIES( ${PCL_INCLUDE_DIRS} )
LINK_DIRECTORIES( ${PCL_LIBRARY_DIRS} )
FIND_PACKAGE( OpenCV REQUIRED )
INCLUDE_DIRECTORIES( ${OpenCV_INCLUDE_DIRS} )
LINK_DIRECTORIES( ${OpenCV_LIBRARY_DIRS} )
MESSAGE(STATUS "OpenCV library status:")
MESSAGE(STATUS " version: ${OpenCV_VERSION}")
MESSAGE(STATUS " libraries: ${OpenCV_LIBS}")
MESSAGE(STATUS " include path: ${OpenCV_INCLUDE_DIRS}")
ADD_DEFINITIONS(-D_CRT_SECURE_NO_WARNINGS)
FILE( GLOB DesiredView_SRC
"*.h"
"*.cpp"
)
ADD_EXECUTABLE( DesiredView ${DesiredView_SRC} )
TARGET_LINK_LIBRARIES( DesiredView ${PCL_LIBRARIES} ${KinectSDK2_LIBRARIES} ${OpenCV_LIBS} )
我 2 天前刚开始使用 CMake。 所以我对这个很陌生。
非常感谢您的帮助。
弗洛里安
【问题讨论】:
-
欢迎来到 Stack Overflow!我看到您在代码中插入了
message()调用。他们的输出可能会有所帮助 - 将其添加到问题帖子中。I downloaded the pre-built library of opencv 3.3.1- 你在哪里(在哪个目录)放置 opencv 库?
标签: c++ visual-studio opencv cmake