Instruções de instalação para CAFFE (CPU Version) para Debian 9 Stretch

0

Eu tive dificuldade em instalar o Caffe (CPU Version) do código fonte no Debian 9 Stretch. (Encontrou erros de link ao executar make all , associado a blas / liblapack)

Na resposta abaixo, listei os comandos do terminal que executei para instalar o Caffe. Eu testei isso em uma nova instalação do Virtualbox do Debian 9, a partir da imagem do DVD (DVD1.iso)

Endereço: link

Também disponível em: link , clique no link para "DVD" / amd64.

É (provavelmente?) importante especificar a versão exata do Debian que usei durante este processo de instalação. Outras versões da instalação (por exemplo, do CD) devem funcionar, mas você pode precisar instalar outros pacotes que eu não precisei instalar. A data é de 13-12-2013.

    
por user3728501 13.12.2017 / 16:23

1 resposta

0

Comandos de terminal: Observe que isso funcionou dentro de uma nova instalação dentro de uma máquina virtual. Eles NÃO funcionaram em uma instalação existente do mesmo sistema operacional, o que significa que

  • Esqueci qual versão da distribuição debian que instalei na minha máquina. (É Stretch, mas pode ter sido a instalação do CD, não a do DVD).

  • Ou instalei algumas outras coisas nesse meio tempo que alteraram meu sistema operacional de tal forma que a instalação do Caffe falhou. Eu não tenho ideia de por que isso acontece.

Execute os seguintes comandos do terminal para instalar dependências

# Update system
sudo apt update && sudo apt upgrade -y
# Install general development tools
sudo apt install -y build-essential cmake pkg-config git
# Install blas
sudo apt install -y libopenblas-*
# Install boost
sudo apt install -y libboost-all-dev
# Install open CV
sudo apt install -y libopencv-dev
# Install protobuf
sudo apt install -y protobuf-compiler libprotobuf-dev
# Install other dependencies
sudo apt install -y libgflags-dev libhdf5-dev libhdf5-serial-dev liblmdb-dev libleveldb-dev libsnappy-dev libgoogle-glog-dev
# Install python dependencies
python python-pip python-numpy python-scipy python-dev python3 python3-pip python3-numpy python3-scipy python3-dev

Clone caffe

cd ~
git clone https://github.com/BVLC/caffe.git
cd caffe

Copie Makefile.config.example e altere as configurações antes de criar

cp Makefile.config.example Makefile.config
vim Makefile.config

Aqui está a saída do diff depois que eu editei para a compilação da CPU

8c8
< # CPU_ONLY := 1
---
> CPU_ONLY := 1
51c51
< BLAS := atlas
---
> BLAS := open
95c95
< INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include
---
> INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include /usr/include/hdf5/serial

Em resumo, habilitei o modo de construção CPU_ONLY, alterei o BLAS para o OpenBLAS e adicionei um diretório include; %código%. Sem este diretório extra, a compilação falha com o erro "não foi possível encontrar hdf5.h".

Observação: Você também pode precisar remover o comentário da linha /usr/include/hdf5/serial se você estiver usando o OpenCV versão 3.

Instalar pacotes extras de python

cd python
for req in $(cat requirements.txt); do pip install $req; done
for req in $(cat requirements.txt); do pip3 install $req; done

Observe que faço tudo para python e python3. Existe um método para alternar entre a versão do python caffe usada na construção dos pacotes python, mas eu ainda não sei como fazer isso, então apenas instalei os dois e esperei pelo melhor.

Crie links simbólicos para hdf5 libs

cd /usr/lib/x86_64-linux-gnu/
sudo ln -s libhdf5_serial.so.100.0.1 libhdf5.so
sudo ln -s libhdf5_serial_hl.so.100.0.0 libhdf5_hl.so

Construir

cd ~/caffe
make all
make test
make runtest
make pycaffe
make distribute
// TODO: move make distribute output to correct place
// figure out what to do with other files in distribute directory

Mover os arquivos de distribuição para o local correto

cd distribute
sudo cp -r ./bin/* /bin/
sudo cp -r ./include/* /usr/include/
sudo cp -r ./lib/* /usr/lib

Não tenho ideia do que fazer com os diretórios OPENCV_VERSION := 3 e proto .

    
por 13.12.2017 / 16:23