LoginSignup
0
0

More than 5 years have passed since last update.

cuDNN v6.0でssdcaffeをビルドする時に詰まった事メモ

Last updated at Posted at 2018-04-02

環境

CPU: x86_64
OS: ubuntu 16.04.4 LTS
CUDA: V8.0.61
cuDNN: v6.0.21

cmake ..のエラー

...(略)
Could NOT find LMDB(missing: LMDB_INCLUDE_DIR LMDB_LIBRARIES)
...(略)

http://caffe.berkeleyvision.org/install_apt.html
の14.04向けの依存パッケージも要るらしい。なので、

sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev

ERROR in make && make distribute

hdf5.h: No such file or directory

follow this :
https://github.com/NVIDIA/DIGITS/issues/156
https://github.com/BVLC/caffe/issues/2347 -> CDLuminate's first suggestion.

ERROR in make && make distribute

/usr/bin/ld: cannot find -lhdf5_hl
/usr/bin/ld: cannot find -lhdf5

https://github.com/NVIDIA/DIGITS/issues/156 -> tangshi's suggestion helped me

cuDNNのバージョンエラー

[  1%] Building NVCC (Device) object src/caffe/CMakeFiles/cuda_compile.dir/util/cuda_compile_generated_bbox_util.cu.o
../ssdcaffe/include/caffe/util/cudnn.hpp(112): error: too few arguments in function call

https://github.com/weiliu89/caffe/issues/534 を参考に、
https://github.com/BVLC/caffe/commit/0096fe3d270a4833479076e18492de8b28564c80
のコミット内容をコピペして解決

cuda_runtime_api.h内で関数未定義のエラー

[ 36%] Building CXX object src/caffe/CMakeFiles/caffe.dir/util/cudnn.cpp.o
(略)
/usr/local/cuda-8.0/include/cuda_runtime_api.h:1628:101: error: use of enum ‘cudaDeviceP2PAttr’ without previous declaration
 extern __host__ __cudart_builtin__ cudaError_t CUDARTAPI cudaDeviceGetP2PAttribute(int *value, enum cudaDeviceP2PAttr attr, int srcDevice, int dstDevice);
                                                                                                     ^

https://github.com/Theano/Theano/issues/5856 を参考に、

/usr/include/cudnn.h
-#include "driver_types.h"
+#include <driver_types.h>

で解決

TIFFライブラリ周りでエラー

[ 83%] Linking CXX executable compute_image_mean
/opt/ros/kinetic/lib/libopencv_imgcodecs3.so.3.3.1: undefined reference to `TIFFReadDirectory@LIBTIFF_4.0'
/opt/ros/kinetic/lib/libopencv_imgcodecs3.so.3.3.1: undefined reference to `TIFFWriteEncodedStrip@LIBTIFF_4.0'
/opt/ros/kinetic/lib/libopencv_imgcodecs3.so.3.3.1: undefined reference to `TIFFIsTiled@LIBTIFF_4.0'
/opt/ros/kinetic/lib/libopencv_imgcodecs3.so.3.3.1: undefined reference to `TIFFScanlineSize@LIBTIFF_4.0'
/opt/ros/kinetic/lib/libopencv_imgcodecs3.so.3.3.1: undefined reference to `TIFFRGBAImageOK@LIBTIFF_4.0'
/opt/ros/kinetic/lib/libopencv_imgcodecs3.so.3.3.1: undefined reference to `TIFFClose@LIBTIFF_4.0'
/opt/ros/kinetic/lib/libopencv_imgcodecs3.so.3.3.1: undefined reference to `TIFFSetWarningHandler@LIBTIFF_4.0'
/opt/ros/kinetic/lib/libopencv_imgcodecs3.so.3.3.1: undefined reference to `TIFFWriteScanline@LIBTIFF_4.0'
/opt/ros/kinetic/lib/libopencv_imgcodecs3.so.3.3.1: undefined reference to `TIFFGetField@LIBTIFF_4.0'
/opt/ros/kinetic/lib/libopencv_imgcodecs3.so.3.3.1: undefined reference to `TIFFNumberOfStrips@LIBTIFF_4.0'
/opt/ros/kinetic/lib/libopencv_imgcodecs3.so.3.3.1: undefined reference to `TIFFReadEncodedTile@LIBTIFF_4.0'
/opt/ros/kinetic/lib/libopencv_imgcodecs3.so.3.3.1: undefined reference to `TIFFReadRGBATile@LIBTIFF_4.0'
/opt/ros/kinetic/lib/libopencv_imgcodecs3.so.3.3.1: undefined reference to `TIFFClientOpen@LIBTIFF_4.0'
/opt/ros/kinetic/lib/libopencv_imgcodecs3.so.3.3.1: undefined reference to `TIFFOpen@LIBTIFF_4.0'
/opt/ros/kinetic/lib/libopencv_imgcodecs3.so.3.3.1: undefined reference to `TIFFReadEncodedStrip@LIBTIFF_4.0'
/opt/ros/kinetic/lib/libopencv_imgcodecs3.so.3.3.1: undefined reference to `TIFFSetField@LIBTIFF_4.0'
/opt/ros/kinetic/lib/libopencv_imgcodecs3.so.3.3.1: undefined reference to `TIFFSetErrorHandler@LIBTIFF_4.0'
/opt/ros/kinetic/lib/libopencv_imgcodecs3.so.3.3.1: undefined reference to `TIFFReadRGBAStrip@LIBTIFF_4.0'
collect2: error: ld returned 1 exit status
tools/CMakeFiles/compute_image_mean.dir/build.make:140: recipe for target 'tools/compute_image_mean' failed
make[2]: *** [tools/compute_image_mean] Error 1
CMakeFiles/Makefile2:479: recipe for target 'tools/CMakeFiles/compute_image_mean.dir/all' failed
make[1]: *** [tools/CMakeFiles/compute_image_mean.dir/all] Error 2
Makefile:127: recipe for target 'all' failed
make: *** [all] Error 2

https://github.com/BVLC/caffe/issues/1559 を参考に、

$ sudo conda uninstall libtiff
[sudo] password for hoge: 
Solving environment: done


==> WARNING: A newer version of conda exists. <==
  current version: 4.4.10
  latest version: 4.5.0

Please update conda by running

    $ conda update -n base conda



## Package Plan ##

  environment location: /home/hoge/anaconda2

  removed specs: 
    - libtiff


The following packages will be REMOVED:

    anaconda:           5.1.0-py27_2    
    anaconda-navigator: 1.7.0-py27_0    
    libtiff:            4.0.9-h28f6b97_0

Proceed ([y]/n)? y

Preparing transaction: done
Verifying transaction: done
Executing transaction: done

でビルドできた!

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0