gpt4 book ai didi

docker - 在docker容器中安装CMake时出错。找不到PROTOBUF

转载 作者:行者123 更新时间:2023-12-02 18:09:27 28 4
gpt4 key购买 nike

嗨,我正在尝试构建一个运行openpose的docker镜像。一切顺利,直到我必须编译要提供的源代码为止。

我在下面运行Dockerfile并抛出以下错误:

CMake Error at /usr/share/cmake-3.5/Modules/FindPackageHandleStandardArgs.cmake:148 (message):
Could NOT find Protobuf (missing: PROTOBUF_LIBRARY PROTOBUF_INCLUDE_DIR)
Call Stack (most recent call first):
/usr/share/cmake-3.5/Modules/FindPackageHandleStandardArgs.cmake:388 (_FPHSA_FAILURE_MESSAGE)
/usr/share/cmake-3.5/Modules/FindProtobuf.cmake:308 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)
CMakeLists.txt:388 (find_package)

我尝试执行以下操作: Could not find PROTOBUF Compiler
并通过apt-get安装protobuf,但是没有用。有时候是这样的:
After this operation, 2321 kB of additional disk space will be used.
Do you want to continue? [Y/n] Abort.
The command '/bin/sh -c apt-get update && apt-get install protobuf-compiler' returned a non-zero code: 1

这是我的Dockerfile:
FROM ubuntu:16.04

RUN apt-get update && apt-get install -y libopencv-dev

WORKDIR src

RUN apt-get update && \
apt-get upgrade -y && \
apt-get install -y git

RUN git clone https://github.com/CMU-Perceptual-Computing-Lab/openpose.git

WORKDIR /src/openpose/3rdparty

RUN rm -r caffe
RUN rm -r pybind11

RUN git clone https://github.com/BVLC/caffe.git
RUN git clone https://github.com/pybind/pybind11.git

WORKDIR /src/openpose/build


RUN apt-get update && apt-get -y install cmake
RUN cmake .. -DBUILD_CAFFE=OFF -DGPU_MODE=CPU_ONLY
RUN make
RUN make install

RUN make -j`nproc`

此故障发生在RUN cmake ..行上。

错误的完整日志如下:
-- The C compiler identification is GNU 5.4.0
-- The CXX compiler identification is GNU 5.4.0
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- GCC detected, adding compile flags
-- Building CPU Only.
-- Building with MKL support.
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Looking for pthread_create
-- Looking for pthread_create - not found
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE
-- Could NOT find GFlags (missing: GFLAGS_INCLUDE_DIR GFLAGS_LIBRARY)
-- Could NOT find Glog (missing: GLOG_INCLUDE_DIR GLOG_LIBRARY)
CMake Error at /usr/share/cmake-3.5/Modules/FindPackageHandleStandardArgs.cmake:148 (message):
Could NOT find Protobuf (missing: PROTOBUF_LIBRARY PROTOBUF_INCLUDE_DIR)
Call Stack (most recent call first):
/usr/share/cmake-3.5/Modules/FindPackageHandleStandardArgs.cmake:388 (_FPHSA_FAILURE_MESSAGE)
/usr/share/cmake-3.5/Modules/FindProtobuf.cmake:308 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)
CMakeLists.txt:388 (find_package)


-- Configuring incomplete, errors occurred!
See also "/src/openpose/build/CMakeFiles/CMakeOutput.log".
See also "/src/openpose/build/CMakeFiles/CMakeError.log".
The command '/bin/sh -c cmake .. -DBUILD_CAFFE=OFF -DGPU_MODE=CPU_ONLY -DBLAS=open' returned a non-zero code: 1

最佳答案

在尝试运行cmake命令之前,您的Dockerfile需要安装Protobuf。

这行:

RUN apt-get update && apt-get -y install cmake

应该:
RUN apt-get update && apt-get -y install cmake protobuf-compiler

如果还有其他缺少的依赖项,则在使用这些依赖项之前,还需要确保已安装这些依赖项。

关于docker - 在docker容器中安装CMake时出错。找不到PROTOBUF,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55506684/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com