восстановление потерянных библиотек libhdf5.so и libhdf5_hl.so приводит к ошибкам компиляции Caffe - PullRequest
0 голосов
/ 30 марта 2019

В моем каталоге / usr / lib / x86_64-linux-gnu были две библиотеки красного цвета,

 libhdf5.so and libhdf5_hl.so

Насколько я понимаю, это ссылки-сироты. Я удалил их, но теперь нужно создать новые. Я нашел эти файлы

/usr/lib/x86_64-linux-gnu/hdf5/serial/libhdf5_hl.so

/usr/lib/x86_64-linux-gnu/hdf5/serial/libhdf5.so

поэтому я создал новые символические ссылки, и теперь они чирки.

Однако я получаю эти ошибки при компиляции CAFFE

src/caffe/net.cpp:774:7: error: there are no arguments to ‘H5Fis_hdf5’ that depend on a template parameter, so a declaration of ‘H5Fis_hdf5’ must be available [-fpermissive]
   if (H5Fis_hdf5(trained_filename.c_str())) {
       ^~~~~~~~~~
src/caffe/net.cpp:774:7: note: (if you use ‘-fpermissive’, G++ will accept your code, but allowing the use of an undeclared name is deprecated)
src/caffe/net.cpp: In instantiation of ‘void caffe::Net<Dtype>::CopyTrainedLayersFrom(const string&) [with Dtype = float; std::__cxx11::string = std::__cxx11::basic_string<char>]’:
src/caffe/net.cpp:992:1:   required from here
src/caffe/net.cpp:774:17: error: ‘H5Fis_hdf5’ was not declared in this scope
   if (H5Fis_hdf5(trained_filename.c_str())) {
       ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
src/caffe/net.cpp: In instantiation of ‘void caffe::Net<Dtype>::CopyTrainedLayersFrom(const string&) [with Dtype = double; std::__cxx11::string = std::__cxx11::basic_string<char>]’:
src/caffe/net.cpp:992:1:   required from here
src/caffe/net.cpp:774:17: error: ‘H5Fis_hdf5’ was not declared in this scope
Makefile:611: recipe for target '.build_release/src/caffe/net.o' failed
make: *** [.build_release/src/caffe/net.o] Error 1
make: *** Waiting for unfinished jobs....

Так я сделал символическую ссылку на неправильные файлы?

1 Ответ

1 голос
/ 02 апреля 2019

Нет, это не имеет ничего общего с библиотеками, так как вы еще не переходили на этап связывания.Вы ошибка из-за сбоя компиляции.См. эту проблему , возможно, это поможет.

...