红联Linux门户
Linux帮助

程序编译提示找不到头文件OpenNI.h:no such file or directory

发布时间:2017-01-04 10:25:23来源:blog.csdn.net/StrugglePeach作者:StrugglePeach
在编写的源程序中,使用cmake进行编译,提示OpenNI.h:no such file or directory,以下是程序编译提示找不到头文件的解决方法。
 
我安装的openNI安装在/opt目录下,在home目录下的.bashrc文件中已经添加了系统环境变量
export OPENNI2_INCLUDE="/opt/OpenNI/OpenNI-Linux-x64-2.2/Include"
export OPENNI2_REDIST="/opt/OpenNI/OpenNI-Linux-x64-2.2/Redist"
 
在工程的CMakeList.txt中,内容如下:
CMAKE_MINIMUM_REQUIRED( VERSION 2.8 )
PROJECT( testKinect1 )
SET( CMAKE_CXX_COMPILER "g++" )
SET( CMAKE_BUILD_TYPE Release )
SET( CMAKE_CXX_FLAGS "-O3 -std=c++11" )
SET( EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/bin )
SET( LIBRARY_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/lib )
INCLUDE_DIRECTORIES( ${PROJECT_SOURCE_DIR}/include ${OPENNI2_INCLUDE} ${OPENNI2_REDIST} 
)
LINK_DIRECTORIES( ${PROJECT_SOURCE_DIR}/lib )
ADD_SUBDIRECTORY( ${PROJECT_SOURCE_DIR}/src )
 
后来发现在cmake中,${}这种形式的引用是引用的cmake的环境变量,而不是系统的环境变量,这里实际上应该用系统的环境变量,所以需要使用 $ENV{},这样cmake引用的才是系统的环境变量。修改之后,编译通过。
 
本文永久更新地址:http://www.linuxdiyf.com/linux/27493.html