I installed caffe and matcaffe. However, when I did make mattest, I got the following error:
Invalid MEX-file
'/home/<user>/Downloads/caffe/matlab/+caffe/private/caffe_.mexa64':
/usr/local/MATLAB/<version>/bin/glnxa64/libgdal.so.1: undefined symbol:
_ZN11xercesc_3_111InputSource11setEncodingEPKt.
Error in caffe.set_mode_cpu (line 5)
caffe_('set_mode_cpu');
Error in caffe.run_tests (line 6)
caffe.set_mode_cpu();
I saw similar post in issues of caffe:
where the problem was with symbolic link of opencv.
the lib file is geographic data abstraction library and the undefined symbol is related to xerces-c-3-1 library. I checked and I have two versions. .so and .so.3.1.
The undefined symbol seems to be related to .so.3.1. So I tried to recreate the symbolic link by first renaming the existing
xerces-c-3.1.so to xerces-c-3.1.so.bak and then
recreating a link to
xerces-c-3.1.so in usr/lib folder. I encountered another problem.
So, I did not try further and left. Did anyone encounter this problem? Is it due to opencv?
I did try changing the symbolic links of three opencv libraries: highgui, core and imgproc without success.