2017-04-07 1015 views
0
CMAKE_MINIMUM_REQUIRED(VERSION 2.8.7 FATAL_ERROR) 

INCLUDE(FindPackageHandleStandardArgs) 

FIND_LIBRARY(GLOG_LIBRARY glog) 
FIND_PATH(GLOG_INCLUDE_DIR "glog/logging.h") 

SET(GLOG_LIBRARIES ${GLOG_LIBRARY}) 

FIND_PACKAGE_HANDLE_STANDARD_ARGS(
    Glog 
    REQUIRED_ARGS GLOG_INCLUDE_DIR GLOG_LIBRARY) 

这是cmake文件。我在/apps/glog中安装了google glog 0.3.4。为什么编译这个文件时,仍然存在以下错误?我检查了,glog/logging.h0.3.4/include/glog/之下。CMake无法找到glog

CMake Error at cmake/FindGlog.cmake:77 (MESSAGE): 
    Failed to find glog - Could not find glog include directory, set 
    GLOG_INCLUDE_DIR to directory containing glog/logging.h 
Call Stack (most recent call first): 
    cmake/FindGlog.cmake:103 (GLOG_REPORT_NOT_FOUND) 
    CMakeLists.txt:27 (FIND_PACKAGE) 
+1

命令[find_path(https://cmake.org/cmake/help/v3.7/command/find_path.html)的搜索请求的文件('考勤记录/ logging.h')在某些系统目录。我猜,目录'/ apps/glog/0.3.4 /'不是系统的目录之一,所以默认情况下不会搜索它。你可以在调用'cmake'时设置'CMAKE_PREFIX_PATH'变量来提示CMake该目录:'cmake -DCMAKE_PREFIX_PATH =/apps/glog/0.3.4 ...'。 – Tsyvarev

+0

是的..我使用的系统每次我想使用一个库时,我都必须从“应用程序”加载它。所有的库都由管理员管理。我不太了解这个机制。但我认为这是主要问题。我会尝试你的方法。 – deathlee

回答