tbeu / matio

MATLAB MAT File I/O Library
https://matio.sourceforge.io
BSD 2-Clause "Simplified" License
334 stars 97 forks source link

hdf5 errors #96

Closed adangert closed 5 years ago

adangert commented 5 years ago

I'm trying to install PSPNet/caffe (https://github.com/hszhao/PSPNet), which uses matio, I've successfully installed the newest matio with the newest hdf5, however I'm getting these errors, which seem related to matio and hdf5

main-10-230-5-186:PSPNet aaron$ make -j8
[  1%] Built target proto
Scanning dependencies of target caffe
[  2%] Building CXX object src/caffe/CMakeFiles/caffe.dir/util/matio_io.cpp.o
[  4%] Linking CXX shared library ../../lib/libcaffe.dylib
ld: warning: text-based stub file /System/Library/Frameworks//Accelerate.framework/Accelerate.tbd and library file /System/Library/Frameworks//Accelerate.framework/Accelerate are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vImage.framework/Versions/A/vImage.tbd and library file /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vImage.framework/Versions/A/vImage are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks//vecLib.framework/Versions/A/vecLib.tbd and library file /System/Library/Frameworks//vecLib.framework/Versions/A/vecLib are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libvDSP.tbd and library file /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libvDSP.dylib are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libBNNS.tbd and library file /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libBNNS.dylib are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libQuadrature.tbd and library file /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libQuadrature.dylib are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libvMisc.tbd and library file /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libvMisc.dylib are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libLAPACK.tbd and library file /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libLAPACK.dylib are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libLinearAlgebra.tbd and library file /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libLinearAlgebra.dylib are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libSparse.tbd and library file /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libSparse.dylib are out of sync. Falling back to library file for linking.
ld: warning: text-based stub file /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libSparseBLAS.tbd and library file /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libSparseBLAS.dylib are out of sync. Falling back to library file for linking.
Undefined symbols for architecture x86_64:
  "_H5LTfind_dataset", referenced from:
      caffe::SGDSolver<float>::RestoreSolverStateFromHDF5(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) in sgd_solver.cpp.o
      caffe::SGDSolver<double>::RestoreSolverStateFromHDF5(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) in sgd_solver.cpp.o
      void caffe::hdf5_load_nd_dataset_helper<float>(long long, char const*, int, int, caffe::Blob<float>*) in hdf5.cpp.o
      void caffe::hdf5_load_nd_dataset_helper<double>(long long, char const*, int, int, caffe::Blob<double>*) in hdf5.cpp.o
  "_H5LTget_dataset_info", referenced from:
      void caffe::hdf5_load_nd_dataset_helper<float>(long long, char const*, int, int, caffe::Blob<float>*) in hdf5.cpp.o
      void caffe::hdf5_load_nd_dataset_helper<double>(long long, char const*, int, int, caffe::Blob<double>*) in hdf5.cpp.o
      caffe::hdf5_load_string(long long, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) in hdf5.cpp.o
  "_H5LTget_dataset_ndims", referenced from:
      void caffe::hdf5_load_nd_dataset_helper<float>(long long, char const*, int, int, caffe::Blob<float>*) in hdf5.cpp.o
      void caffe::hdf5_load_nd_dataset_helper<double>(long long, char const*, int, int, caffe::Blob<double>*) in hdf5.cpp.o
  "_H5LTmake_dataset_double", referenced from:
      void caffe::hdf5_save_nd_dataset<double>(long long, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, caffe::Blob<double> const&, bool) in hdf5.cpp.o
  "_H5LTmake_dataset_float", referenced from:
      void caffe::hdf5_save_nd_dataset<float>(long long, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, caffe::Blob<float> const&, bool) in hdf5.cpp.o
  "_H5LTmake_dataset_int", referenced from:
      caffe::hdf5_save_int(long long, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, int) in hdf5.cpp.o
  "_H5LTmake_dataset_string", referenced from:
      caffe::hdf5_save_string(long long, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) in hdf5.cpp.o
  "_H5LTread_dataset_double", referenced from:
      void caffe::hdf5_load_nd_dataset<double>(long long, char const*, int, int, caffe::Blob<double>*) in hdf5.cpp.o
  "_H5LTread_dataset_float", referenced from:
      void caffe::hdf5_load_nd_dataset<float>(long long, char const*, int, int, caffe::Blob<float>*) in hdf5.cpp.o
  "_H5LTread_dataset_int", referenced from:
      caffe::hdf5_load_int(long long, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) in hdf5.cpp.o
  "_H5LTread_dataset_string", referenced from:
      caffe::hdf5_load_string(long long, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) in hdf5.cpp.o
  "_Mat_Close", referenced from:
      void caffe::ReadBlobFromMat<float>(char const*, caffe::Blob<float>*) in matio_io.cpp.o
      void caffe::ReadBlobFromMat<double>(char const*, caffe::Blob<double>*) in matio_io.cpp.o
      void caffe::ReadBlobFromMat<int>(char const*, caffe::Blob<int>*) in matio_io.cpp.o
      void caffe::ReadBlobFromMat<unsigned int>(char const*, caffe::Blob<unsigned int>*) in matio_io.cpp.o
      void caffe::WriteBlobToMat<float>(char const*, bool, caffe::Blob<float>*) in matio_io.cpp.o
      void caffe::WriteBlobToMat<double>(char const*, bool, caffe::Blob<double>*) in matio_io.cpp.o
      void caffe::WriteBlobToMat<int>(char const*, bool, caffe::Blob<int>*) in matio_io.cpp.o
      ...
  "_Mat_CreateVer", referenced from:
      void caffe::WriteBlobToMat<float>(char const*, bool, caffe::Blob<float>*) in matio_io.cpp.o
      void caffe::WriteBlobToMat<double>(char const*, bool, caffe::Blob<double>*) in matio_io.cpp.o
      void caffe::WriteBlobToMat<int>(char const*, bool, caffe::Blob<int>*) in matio_io.cpp.o
      void caffe::WriteBlobToMat<unsigned int>(char const*, bool, caffe::Blob<unsigned int>*) in matio_io.cpp.o
  "_Mat_Open", referenced from:
      void caffe::ReadBlobFromMat<float>(char const*, caffe::Blob<float>*) in matio_io.cpp.o
      void caffe::ReadBlobFromMat<double>(char const*, caffe::Blob<double>*) in matio_io.cpp.o
      void caffe::ReadBlobFromMat<int>(char const*, caffe::Blob<int>*) in matio_io.cpp.o
      void caffe::ReadBlobFromMat<unsigned int>(char const*, caffe::Blob<unsigned int>*) in matio_io.cpp.o
  "_Mat_VarCreate", referenced from:
      void caffe::WriteBlobToMat<float>(char const*, bool, caffe::Blob<float>*) in matio_io.cpp.o
      void caffe::WriteBlobToMat<double>(char const*, bool, caffe::Blob<double>*) in matio_io.cpp.o
      void caffe::WriteBlobToMat<int>(char const*, bool, caffe::Blob<int>*) in matio_io.cpp.o
      void caffe::WriteBlobToMat<unsigned int>(char const*, bool, caffe::Blob<unsigned int>*) in matio_io.cpp.o
  "_Mat_VarFree", referenced from:
      void caffe::ReadBlobFromMat<float>(char const*, caffe::Blob<float>*) in matio_io.cpp.o
      void caffe::ReadBlobFromMat<double>(char const*, caffe::Blob<double>*) in matio_io.cpp.o
      void caffe::ReadBlobFromMat<int>(char const*, caffe::Blob<int>*) in matio_io.cpp.o
      void caffe::ReadBlobFromMat<unsigned int>(char const*, caffe::Blob<unsigned int>*) in matio_io.cpp.o
      void caffe::WriteBlobToMat<float>(char const*, bool, caffe::Blob<float>*) in matio_io.cpp.o
      void caffe::WriteBlobToMat<double>(char const*, bool, caffe::Blob<double>*) in matio_io.cpp.o
      void caffe::WriteBlobToMat<int>(char const*, bool, caffe::Blob<int>*) in matio_io.cpp.o
      ...
  "_Mat_VarReadDataLinear", referenced from:
      void caffe::ReadBlobFromMat<float>(char const*, caffe::Blob<float>*) in matio_io.cpp.o
      void caffe::ReadBlobFromMat<double>(char const*, caffe::Blob<double>*) in matio_io.cpp.o
      void caffe::ReadBlobFromMat<int>(char const*, caffe::Blob<int>*) in matio_io.cpp.o
      void caffe::ReadBlobFromMat<unsigned int>(char const*, caffe::Blob<unsigned int>*) in matio_io.cpp.o
  "_Mat_VarReadInfo", referenced from:
      void caffe::ReadBlobFromMat<float>(char const*, caffe::Blob<float>*) in matio_io.cpp.o
      void caffe::ReadBlobFromMat<double>(char const*, caffe::Blob<double>*) in matio_io.cpp.o
      void caffe::ReadBlobFromMat<int>(char const*, caffe::Blob<int>*) in matio_io.cpp.o
      void caffe::ReadBlobFromMat<unsigned int>(char const*, caffe::Blob<unsigned int>*) in matio_io.cpp.o
  "_Mat_VarWrite", referenced from:
      void caffe::WriteBlobToMat<float>(char const*, bool, caffe::Blob<float>*) in matio_io.cpp.o
      void caffe::WriteBlobToMat<double>(char const*, bool, caffe::Blob<double>*) in matio_io.cpp.o
      void caffe::WriteBlobToMat<int>(char const*, bool, caffe::Blob<int>*) in matio_io.cpp.o
      void caffe::WriteBlobToMat<unsigned int>(char const*, bool, caffe::Blob<unsigned int>*) in matio_io.cpp.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [lib/libcaffe.1.0.0-rc3.dylib] Error 1
make[1]: *** [src/caffe/CMakeFiles/caffe.dir/all] Error 2
make: *** [all] Error 2
adangert commented 5 years ago

I've also opened this issue on their side as well: https://github.com/hszhao/PSPNet/issues/94

tbeu commented 5 years ago

Missing linker dependencies hdf5 and matio for x86_64.

anilkumar2444 commented 5 years ago

Missing linker dependencies hdf5 and matio for x86_64.

How to solve it?