2016-05-03 2 views
15

У меня возникли проблемы при установке Caffe Deep Learning Framework на Python:Caffe не видел hdf5.h при компиляции

Когда я запускаю make команду в каталоге Caffe, это говорит

hdf5.h : нет такого каталога

шаги, которые я сделал:

  • Update и обновить мой Ubuntu Server

  • Установка Python 2.7

  • Имея все основания зависимостей на http://caffe.berkeleyvision.org/install_apt.html

  • Run ф ф Makefile.config.example Makefile.config

  • раскомментировать cpu_only = 1 в Makefile.config

Буду благодарен, если кто-то может мне помочь.

Сообщение об ошибке:

CXX src/caffe/util/hdf5.cpp 
in file include from src/caffe/util/hdf5.cpp:1:0: 
./include/caffe/util/hdf5.hpp:6:18: fatal error: hdf5.h: No such file or directory 
compilation terminated 

Makefile:572 recipe for target '.build_release/src/caffe/util/hdf5.o'  
failed Make:*** [.build_release/src/caffe/util/hdf5.o] Error 1 
+2

прием к SO. пожалуйста, не публикуйте скриншоты, а скорее скопируйте-вставьте (и форматируйте) сообщение об ошибке на свой вопрос: таким образом поисковые системы могут лучше найти этот поток в будущем. – Shai

+2

Установили ли вы hdf5? посмотрите http://caffe.berkeleyvision.org/install_apt.html: 'sudo apt-get install libhdf5-serial-dev' – Shai

+1

oh жаль, что я новичок, я изменю скриншоты. спасибо, что уведомил меня. да, я уже установил hdf5. – kelvin

ответ

38

Что версия вашей Ubuntu установить? Попробуй это. В вашем Makefile.config пытаются добавить /usr/include/hdf5/serial/ к INCLUDE_DIRS:

--- INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include 
+++ INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include /usr/include/hdf5/serial/ 

и переименовать hdf5_hl и hdf5 к hdf5_serial_hl и hdf5_serial в Makefile:

--- LIBRARIES += glog gflags protobuf boost_system boost_filesystem m hdf5_hl hdf5 
+++ LIBRARIES += glog gflags protobuf boost_system boost_filesystem m hdf5_serial_hl hdf5_serial 

Больше об ошибке исправить here.

+0

извините за мой поздний ответ, спасибо за вашу помощь. Я уже исправил проблему, переместив hdf5 в каталог. – kelvin

+1

Спасибо. Это экономит мне время! – tobe

+1

Это решение, которое сработало для меня! Тхань много! –

2

Другой случай я испытал с:

Я использую Ubuntu 14.04 и установка hdf5-1.10.0.

Я нашел hdf5.h было расположено в /usr/local/hdf5/include. Таким образом, я изменил файл Makefile.config, добавив его в INCLUDE_DIRS.

# Whatever else you find you need goes here. 
INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include \ 
        /usr/local/hdf5/include 

Я ничего не переименовал в Makefile. Он работал нормально.

7

Это решение работает для меня на Ubuntu16.04LTS

sudo apt-get install libhdf5-10 
sudo apt-get install libhdf5-serial-dev 
sudo apt-get install libhdf5-dev 
sudo apt-get install libhdf5-cpp-11 
find /usr -iname "*hdf5.h*" 
/usr/include/hdf5/serial/hdf5.h 
export CPATH="/usr/include/hdf5/serial/" 
+2

Работала и для меня! –

+1

Работал для меня три! –

+0

просто 'sudo apt-get install libhdf5-10 libhdf5-serial-dev' работал для меня –

Смежные вопросы