我使用自制软件来安装opencv和openni以及nite。
我已经设法为opencv创建了一个cmake文件,并且它已经为它的目录OpenCV_LIBS设置了一个已定义的路径,不确定我是如何以及在哪里找到的。
cmake_minimum_required(VERSION 2.8)
project( main )
find_package( OpenCV REQUIRED )
add_executable( main main.cpp )
target_link_libraries( main ${OpenCV_LIBS} )
安装toktakke's build openni和nite之后。 我给了它一个镜头,并扩展到以下,再次我不知道我在哪里找到这些别名到他们的目录。
cmake_minimum_required(VERSION 2.8)
project( main )
find_package( OpenCV REQUIRED )
include_directories(${OPENNI_INCLUDE})
Include_directories(${NITE_INCLUDE})
add_executable( main main.cpp)
target_link_libraries( main ${OpenCV_LIBS} ${OPENNI_LIB} ${NITE_LIB} )
但它没有很好地整合
在.bash_profile
我有以下内容:
export OPENNI_INCLUDE="/usr/local/Cellar/openni/1.5.7.10/include/ni"
export OPENNI_LIB="/usr/local/Cellar/openni/1.5.7.10/lib"
export OPENNI_DIR="/usr/local/Cellar/openni/1.5.7.10"
export NITE_INCLUDE="/usr/local/Cellar/nite/1.5.2.21/include/nite"
export NITE_LIB="/usr/local/Cellar/nite/1.5.2.21/lib"
export NITE_DIR="/usr/local/Cellar/nite/1.5.2.21"
现在我收到以下错误:
fatal error: 'XnOpenNI.h' file not found
#include <XnOpenNI.h>
答案 0 :(得分:1)
您应该添加
include_directories($ENV{OPENNI_INCLUDE})
项目定义后。这将添加OPENNI包含文件的路径作为编译器的-I选项。有关&#39; include_directories&#39;的更多信息命令是here。
关于OpenCV_LIBS的来源:
当&#39; find_package(OpenCV REQUIRED)&#39;如果使用,cmake将自动调用FindOpenCV.cmake(在CMAKE_MODULE_PATH变量指定的路径中找到)。 FindOpenCV.cmake负责实际定位OpenCV库并包含文件,并定义OpenCV_LIBS和一堆其他变量。
这使它&#34;神奇地&#34;适合你。有关find_package magic的更多信息,请参阅CMake docs