ExSidius / openpose-docker

Dockerfile to build the excellent OpenPose software from CMU.
28 stars 33 forks source link

CMake Error: The following variables are used in this project, but they are set to NOTFOUND. #1

Open kdemon1011 opened 5 years ago

kdemon1011 commented 5 years ago

Hi, I have reconfigured the docker file as I need to add python API as well as need ubuntu18.04. But while am building it I am getting this error

CMake Error: The following variables are used in this project, but they are set to NOTFOUND.
Please set them or make sure they are set and tested correctly in the CMake files:
CUDA_cublas_device_LIBRARY (ADVANCED)
    linked by target "caffe" in directory /openpose/3rdparty/caffe/src/caffe

-- Configuring incomplete, errors occurred!
See also "/openpose/build/caffe/src/openpose_lib-build/CMakeFiles/CMakeOutput.log".
See also "/openpose/build/caffe/src/openpose_lib-build/CMakeFiles/CMakeError.log".
make[2]: *** [caffe/src/openpose_lib-stamp/openpose_lib-configure] Error 1
CMakeFiles/openpose_lib.dir/build.make:105: recipe for target 'caffe/src/openpose_lib-stamp/openpose_lib-configure' failed
CMakeFiles/Makefile2:67: recipe for target 'CMakeFiles/openpose_lib.dir/all' failed
make[1]: *** [CMakeFiles/openpose_lib.dir/all] Error 2
make: *** [all] Error 2

Here is my docker file.

FROM nvidia/cuda:10.0-cudnn7-devel-ubuntu18.04

RUN echo "Installing dependencies..." && \
    apt-get -y --no-install-recommends update && \
    apt-get -y --no-install-recommends upgrade && \
    apt-get install -y \
    build-essential \
    cmake=3.12.2 \
    git \
    libatlas-base-dev \
    libprotobuf-dev \
    libleveldb-dev \
    libsnappy-dev \
    libhdf5-serial-dev 
RUN apt-get -y install protobuf-compiler
ENV DEBIAN_FRONTEND=noninteractive
RUN  apt-get install -y tzdata
RUN ln -fs /usr/share/zoneinfo/Asia/Kolkata /etc/localtime
RUN dpkg-reconfigure --frontend noninteractive tzdata
RUN apt-get install -y libboost-all-dev \
    libgflags-dev \
    libgoogle-glog-dev \
    liblmdb-dev \
    pciutils \
    python3-setuptools \
    python3-dev \
    python3-pip \
    opencl-headers \
    ocl-icd-opencl-dev \
    libviennacl-dev \
    libcanberra-gtk-module \
    libopencv-dev && \
    python3 -m pip install \
    numpy \
    protobuf \
    opencv-python

RUN echo "Downloading and building OpenPose..." && \
    git clone https://github.com/CMU-Perceptual-Computing-Lab/openpose.git
RUN mkdir -p /openpose/build 
RUN cd /openpose/build
RUN cmake -D BUILD_PYTHON=ON ..
RUN make -j`nproc`

WORKDIR /openpose

I have installed nvidia-docker2 as i have to run on cuda10.0. I have installed it as per instruction given on nvidia/docker github repo. After that I installed nvidia/cuda:10.0-base and ran the following command

docker run --runtime=nvidia --rm nvidia/cuda:10.0-base nvidia-smi

Output of the command is given below

Tue Apr 23 06:09:24 2019       
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 418.56       Driver Version: 418.56       CUDA Version: 10.1     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|===============================+======================+======================|
|   0  TITAN RTX           Off  | 00000000:17:00.0 Off |                  N/A |
| 40%   39C    P8    11W / 280W |      1MiB / 24190MiB |      1%      Default |
+-------------------------------+----------------------+----------------------+
|   1  TITAN RTX           Off  | 00000000:65:00.0  On |                  N/A |
| 40%   42C    P8    16W / 280W |    427MiB / 24187MiB |      5%      Default |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes:                                                       GPU Memory |
|  GPU       PID   Type   Process name                             Usage      |
|=============================================================================|
+-----------------------------------------------------------------------------+
ExSidius commented 5 years ago

It looks like the CMake issue which I see you tried to remedy by pinning the version number. Let me play with it and get back to you.

kdemon1011 commented 5 years ago

I tried both, with and without specific version.

jutanke commented 5 years ago

@KetulParikh I have a working Dockerfile for Ubuntu 18.04, though I did not test the Python bindings. Will you open-source your final Dockerfile? Good luck.