CAFFEコンパイルレコード

3515 ワード

以下の実験はすべてUbuntu 16にある.04環境で完了し、他のシステム環境は参考にします.
環境のインストール
sudo apt-get install --no-install-recommends build-essential cmake git libatlas-base-dev libboost-all-dev libgflags-dev libgoogle-glog-dev libhdf5-serial-dev liblapack-dev libleveldb-dev liblmdb-dev libopenblas-dev libopencv-dev libprotobuf-dev libsnappy-dev protobuf-c-compiler protobuf-compiler python-numpy

NVIDIAグラフィックスドライブ、cuda、cudnn、tensorrtのインストール
略.
いくつかの問題に直面した.
hdf 5が見つからない.h
リファレンスhttps://blog.csdn.net/lisatiy/article/details/80366386$make allの操作を行った場合、エラーメッセージに「hdf 5.h」が見つかりません.
Makefile.configファイルに含まれるディレクトリを変更する必要があります.
INCLUDE_DIRS := $(PYTHON_INCLUDE)/usr/local/include

「serial」の含むディレクトリを追加します.
INCLUDE_DIRS := $(PYTHON_INCLUDE)/usr/local/include /usr/include/hdf5/serial/

同僚は「Makefile」ファイルを修正し、見つける必要があります.
LIBRARIES += glog gflags protobuf boost_system boost_filesystem m hdf5_hl hdf5

最後の2つを次のように変更します.
LIBRARIES += glog gflags protobuf boost_system boost_filesystem m hdf5_serial_hl hdf5_serial

C++11のサポートが必要
リファレンスhttps://blog.csdn.net/u010158659/article/details/78110484Makefileファイルで検索
CXXFLAGS += -pthread -fPIC $(COMMON_FLAGS) $(WARNINGS)
NVCCFLAGS += -ccbin=$(CXX) -Xcompiler -fPIC $(COMMON_FLAGS)
# mex may invoke an older gcc that is too liberal with -Wuninitalized
MATLAB_CXXFLAGS := $(CXXFLAGS) -Wno-uninitialized
LINKFLAGS += -pthread -fPIC $(COMMON_FLAGS) $(WARNINGS)

「CXXFLAGS」、「NVCFLAGS」、「LINKFLAGS」行末に、それぞれ-std=c++11を追加
protobufインストール
リファレンスhttps://blog.csdn.net/twilightdream/article/details/72953338からhttps://github.com/google/protobuf/releases/Sourceコードのダウンロード
#   Protocol Buffer   
sudo apt install autoconf automake libtool curl
#  ,         ,   autogen.sh   
./autogen.sh
#   configure.sh   
./configure
#         
make
#         
make check
#  
sudo make install
#       
sudo ldconfig
#   Protocol Buffer       
protoc --version

Opencvインストール
ソースをダウンロードして解凍
mkdir build #          
cd build
cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..
make -j8  #  
sudo make install #  
pkg-config --modversion opencv