【问题标题】:Could NOT find Glog (missing: GLOG_INCLUDE_DIR GLOG_LIBRARY)找不到 Glog(缺少:GLOG_INCLUDE_DIR GLOG_LIBRARY)
【发布时间】:2021-01-06 17:23:43
【问题描述】:

我正在尝试使用 CMAKE 在 Ubuntu 20.04 中安装 openpose,但出现以下错误:

Could NOT find Glog (missing: GLOG_INCLUDE_DIR GLOG_LIBRARY) 

我正在按照此处的说明进行操作(不幸的是,屏幕截图不可用,但我只是按照文本命令进行操作): https://github.com/CMU-Perceptual-Computing-Lab/openpose/blob/master/doc/installation/README.md

我在openpose 文件夹中创建了一个build 文件夹,然后运行cmake-gui .. 命令。

打开所有这些检查的 GUI(我没有更改任何内容):

错误是:

GCC detected, adding compile flags
GCC detected, adding compile flags
Building with CUDA.
CUDA detected: 10.1
Added CUDA NVCC flags for: sm_75
cuDNN not found
Found gflags  (include: /usr/include, library: /usr/lib/x86_64-linux-gnu/libgflags.so)
Could NOT find Glog (missing: GLOG_INCLUDE_DIR GLOG_LIBRARY) 
CMake Warning at /usr/share/cmake-3.16/Modules/FindProtobuf.cmake:499 (message):
  Protobuf compiler version 3.13.0 doesn't match library version 3.6.1
Call Stack (most recent call first):
  CMakeLists.txt:429 (find_package)


Found Protobuf: /usr/lib/x86_64-linux-gnu/libprotobuf.so;-lpthread (found version "3.6.1") 
Found OpenCV: /usr (found version "4.2.0") 
cuDNN not found.
#!/bin/bash

echo "This script assumes Ubuntu 16 or 14 and Nvidia Graphics card up to 10XX. Otherwise, it will fail."

# Install cuDNN 5.1
if [[ $UBUNTU_VERSION == *"14."* ]] || [[ $UBUNTU_VERSION == *"15."* ]] || [[ $UBUNTU_VERSION == *"16."* ]]; then
    CUDNN_URL="http://developer.download.nvidia.com/compute/redist/cudnn/v5.1/cudnn-8.0-linux-x64-v5.1.tgz"
    wget -c ${CUDNN_URL}
    sudo tar -xzf cudnn-8.0-linux-x64-v5.1.tgz -C /usr/local
    rm cudnn-8.0-linux-x64-v5.1.tgz && sudo ldconfig
else
    echo "cuDNN NOT INSTALLED! Ubuntu 16 or 14 not found. Install cuDNN manually from 'https://developer.nvidia.com/cudnn'."
fi

CMake Error at CMakeLists.txt:520 (message):
  Install cuDNN using the above commands.  or turn off cuDNN by setting
  USE_CUDNN to OFF.


Configuring incomplete, errors occurred!
See also "/home/mona/research/code/openpose/build/CMakeFiles/CMakeOutput.log".
See also "/home/mona/research/code/openpose/build/CMakeFiles/CMakeError.log".

然后,我使用sudo apt-get install libgflags-dev 命令安装了 gflags,但仍然遇到相同的错误。我该如何解决这个问题?

这是git log,看看我在哪个版本的仓库中重现错误:

$ git log
commit a255747af22116ad76004437456bb531dc5d0b23 (HEAD -> master, origin/master, origin/HEAD)
Author: Wlad Meixner <9556979+gosticks@users.noreply.github.com>
Date:   Mon Dec 21 22:01:10 2020 +0100

    Fix possible typo (#1802)

CMakeOutput.log 和 CMakeError.log 可以在这里找到https://github.com/CMU-Perceptual-Computing-Lab/openpose/issues/1814

【问题讨论】:

    标签: c++ cmake cmake-gui glog


    【解决方案1】:
    $ sudo apt install libgoogle-glog-dev 
    

    还有,

    $ sudo apt-get install libgflags-dev
    $ sudo apt install libgoogle-glog-dev
    $ sudo apt-get install protobuf-compiler libprotobuf-dev
    

    从一开始我没有安装任何一个。

    【讨论】:

      【解决方案2】:

      如果你从命令行运行它,你应该看到它们...

       if (NOT GLOG_FOUND)
          message(FATAL_ERROR "Glog not found. Install Glog from the command line using the command(s) -\
            sudo apt-get install libgoogle-glog-dev")
        endif (NOT GLOG_FOUND)
      
        if (NOT GFLAGS_FOUND)
          message(FATAL_ERROR "GFlags not found. Install GFlags from the command line using the command(s) --\
            sudo apt-get install libgflags-dev")
        endif (NOT GFLAGS_FOUND)
      
        if (NOT OpenCV_FOUND)
          message(FATAL_ERROR "OpenCV not found. Install OpenCV from the command line using the command(s) --\
            sudo apt-get install libopencv-dev")
        endif (NOT OpenCV_FOUND)
      

      参考:https://github.com/CMU-Perceptual-Computing-Lab/openpose/blob/5a9acc730915f2171badcf10076aef9213f38e01/CMakeLists.txt#L523-L537

      注意:更好的方法是在缺少第三方时使用FetchContent()(因为他们提供基于 CMake 的构建),而且提供的命令也仅限于 ubuntu...

      【讨论】:

        猜你喜欢
        • 2018-09-14
        • 2021-06-25
        • 1970-01-01
        • 2021-02-05
        • 2020-03-24
        • 2018-12-01
        • 1970-01-01
        • 2019-07-22
        • 1970-01-01
        相关资源
        最近更新 更多