Is there anybody - i mean really has accomplished to compile caffe, python & matlab interfaces. It's the 3rd day and warnings keeps changing but...
Is there any chance that anybody can provide me a distribution ?...
MEX matlab/+caffe/private/caffe_.cpp
Building with 'Xcode Clang++'.
Undefined symbols for architecture x86_64:
"_mxArrayToString", referenced from:
get_solver(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
solver_restore(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
get_net(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
net_copy_from(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
net_save(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
read_mean(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
_mexFunction in caffe_.o
...
"_mxCreateCellMatrix_700", referenced from:
str_vec_to_mx_strcell(std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&) in caffe_.o
"_mxCreateDoubleMatrix_700", referenced from:
net_get_attr(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
blob_get_shape(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
"_mxCreateDoubleScalar", referenced from:
get_solver(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
solver_get_attr(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
solver_get_iter(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
get_net(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
net_get_attr(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
get_init_key(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
mxArray_tag* ptr_vec_to_handle_vec<caffe::Blob<float> >(std::__1::vector<boost::shared_ptr<caffe::Blob<float> >, std::__1::allocator<boost::shared_ptr<caffe::Blob<float> > > > const&) in caffe_.o
...
"_mxCreateNumericArray_700", referenced from:
blob_to_mx_mat(caffe::Blob<float> const*, WhichMemory) in caffe_.o
"_mxCreateNumericMatrix_700", referenced from:
get_solver(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
solver_get_attr(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
get_net(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
net_get_attr(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
mxArray_tag* ptr_vec_to_handle_vec<caffe::Blob<float> >(std::__1::vector<boost::shared_ptr<caffe::Blob<float> >, std::__1::allocator<boost::shared_ptr<caffe::Blob<float> > > > const&) in caffe_.o
"_mxCreateString", referenced from:
layer_get_type(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
str_vec_to_mx_strcell(std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&) in caffe_.o
"_mxCreateStructMatrix_700", referenced from:
get_solver(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
solver_get_attr(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
get_net(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
net_get_attr(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
layer_get_attr(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
mxArray_tag* ptr_vec_to_handle_vec<caffe::Blob<float> >(std::__1::vector<boost::shared_ptr<caffe::Blob<float> >, std::__1::allocator<boost::shared_ptr<caffe::Blob<float> > > > const&) in caffe_.o
"_mxFree", referenced from:
get_solver(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
solver_restore(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
get_net(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
net_copy_from(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
net_save(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
read_mean(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
_mexFunction in caffe_.o
...
"_mxGetData", referenced from:
get_solver(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
solver_get_attr(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
get_net(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
net_get_attr(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
blob_to_mx_mat(caffe::Blob<float> const*, WhichMemory) in caffe_.o
caffe::Blob<float>* handle_to_ptr<caffe::Blob<float> >(mxArray_tag const*) in caffe_.o
mx_mat_to_blob(mxArray_tag const*, caffe::Blob<float>*, WhichMemory) in caffe_.o
...
"_mxGetField_700", referenced from:
caffe::Blob<float>* handle_to_ptr<caffe::Blob<float> >(mxArray_tag const*) in caffe_.o
caffe::Layer<float>* handle_to_ptr<caffe::Layer<float> >(mxArray_tag const*) in caffe_.o
caffe::Net<float>* handle_to_ptr<caffe::Net<float> >(mxArray_tag const*) in caffe_.o
caffe::Solver<float>* handle_to_ptr<caffe::Solver<float> >(mxArray_tag const*) in caffe_.o
"_mxGetNumberOfElements", referenced from:
blob_reshape(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
mx_mat_to_blob(mxArray_tag const*, caffe::Blob<float>*, WhichMemory) in caffe_.o
"_mxGetPr", referenced from:
net_get_attr(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
blob_get_shape(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
blob_reshape(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
"_mxGetScalar", referenced from:
solver_step(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
set_device(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
caffe::Blob<float>* handle_to_ptr<caffe::Blob<float> >(mxArray_tag const*) in caffe_.o
caffe::Layer<float>* handle_to_ptr<caffe::Layer<float> >(mxArray_tag const*) in caffe_.o
caffe::Net<float>* handle_to_ptr<caffe::Net<float> >(mxArray_tag const*) in caffe_.o
caffe::Solver<float>* handle_to_ptr<caffe::Solver<float> >(mxArray_tag const*) in caffe_.o
"_mxIsChar", referenced from:
get_solver(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
solver_restore(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
get_net(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
net_copy_from(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
net_save(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
read_mean(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
"_mxIsDouble", referenced from:
solver_step(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
blob_reshape(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
set_device(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
"_mxIsSingle", referenced from:
blob_set_data(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
blob_set_diff(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
"_mxIsStruct", referenced from:
solver_get_attr(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
solver_get_iter(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
solver_restore(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
solver_solve(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
solver_step(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
net_get_attr(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
net_forward(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
...
"_mxIsUint64", referenced from:
caffe::Blob<float>* handle_to_ptr<caffe::Blob<float> >(mxArray_tag const*) in caffe_.o
caffe::Layer<float>* handle_to_ptr<caffe::Layer<float> >(mxArray_tag const*) in caffe_.o
caffe::Net<float>* handle_to_ptr<caffe::Net<float> >(mxArray_tag const*) in caffe_.o
caffe::Solver<float>* handle_to_ptr<caffe::Solver<float> >(mxArray_tag const*) in caffe_.o
"_mxSetCell_700", referenced from:
str_vec_to_mx_strcell(std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&) in caffe_.o
"_mxSetField_700", referenced from:
get_solver(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
solver_get_attr(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
get_net(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
net_get_attr(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
layer_get_attr(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
mxArray_tag* ptr_vec_to_handle_vec<caffe::Blob<float> >(std::__1::vector<boost::shared_ptr<caffe::Blob<float> >, std::__1::allocator<boost::shared_ptr<caffe::Blob<float> > > > const&) in caffe_.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: *** [matlab/+caffe/private/caffe_.mexmaci64] Error 255
cheers
It is also needed to add /usr/local/lib /Applications/MATLAB_R2015b.app/bin/maci64 in LIBRARY_DIRS in Makefile.configLIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /Applications/MATLAB_R2015b.app/bin/maci64 /usr/lib
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
mex: link of ' "/Users/alihassan/workspace/caffe/matlab/+caffe/private/caffe_.mexmaci64"' failed.
make[3]: *** [../matlab/+caffe/private/caffe_.mexmaci64] Error 255
make[2]: *** [matlab/CMakeFiles/matlab.dir/all] Error 2
make[1]: *** [matlab/CMakeFiles/matlab.dir/rule] Error 2
make: *** [matlab] Error 2
CXXFLAGS="-fno-common -fexceptions -arch $ARCHS -isysroot $MW_SDKROOT -mmacosx-version-min=$MACOSX_DEPLOYMENT_TARGET "
v1020-wn-4-224:caffe-master jerpint$ make matcaffe
MEX matlab/+caffe/private/caffe_.cpp
Building with 'Xcode Clang++'.
In file included from /Users/jerpint/Documents/project/caffe-master/matlab/+caffe/private/caffe_.cpp:18:
In file included from ./include/caffe/caffe.hpp:12:
./include/caffe/net.hpp:41:5: warning: unused typedef 'INVALID_REQUESTED_LOG_SEVERITY' [-Wunused-local-typedef]
LOG_EVERY_N(WARNING, 1000) << "DEPRECATED: ForwardPrefilled() "
^
/usr/local/include/glog/logging.h:917:30: note: expanded from macro 'LOG_EVERY_N'
INVALID_REQUESTED_LOG_SEVERITY); \
^
1 warning generated.
Undefined symbols for architecture x86_64:
"_mxArrayToString", referenced from:
get_solver(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
solver_restore(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
get_net(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
net_copy_from(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
net_save(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
read_mean(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
write_mean(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
...
"_mxCreateCellMatrix_700", referenced from:
str_vec_to_mx_strcell(std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&) in caffe_.o
"_mxCreateDoubleMatrix_700", referenced from:
net_get_attr(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
blob_get_shape(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
"_mxCreateDoubleScalar", referenced from:
get_solver(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
solver_get_attr(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
solver_get_iter(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
get_net(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
net_get_attr(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
get_init_key(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
mxArray_tag* ptr_vec_to_handle_vec<caffe::Blob<float> >(std::__1::vector<boost::shared_ptr<caffe::Blob<float> >, std::__1::allocator<boost::shared_ptr<caffe::Blob<float> > > > const&) in caffe_.o
...
"_mxCreateNumericArray_700", referenced from:
blob_to_mx_mat(caffe::Blob<float> const*, WhichMemory) in caffe_.o
"_mxCreateNumericMatrix_700", referenced from:
get_solver(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
solver_get_attr(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
get_net(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
net_get_attr(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
mxArray_tag* ptr_vec_to_handle_vec<caffe::Blob<float> >(std::__1::vector<boost::shared_ptr<caffe::Blob<float> >, std::__1::allocator<boost::shared_ptr<caffe::Blob<float> > > > const&) in caffe_.o
"_mxCreateString", referenced from:
layer_get_type(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
version(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
str_vec_to_mx_strcell(std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&) in caffe_.o
"_mxCreateStructMatrix_700", referenced from:
get_solver(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
solver_get_attr(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
get_net(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
net_get_attr(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
layer_get_attr(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
mxArray_tag* ptr_vec_to_handle_vec<caffe::Blob<float> >(std::__1::vector<boost::shared_ptr<caffe::Blob<float> >, std::__1::allocator<boost::shared_ptr<caffe::Blob<float> > > > const&) in caffe_.o
"_mxFree", referenced from:
get_solver(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
solver_restore(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
get_net(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
net_copy_from(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
net_save(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
read_mean(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
write_mean(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
...
"_mxGetData", referenced from:
get_solver(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
solver_get_attr(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
get_net(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
net_get_attr(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
caffe::Solver<float>* handle_to_ptr<caffe::Solver<float> >(mxArray_tag const*) in caffe_.o
caffe::Net<float>* handle_to_ptr<caffe::Net<float> >(mxArray_tag const*) in caffe_.o
mxArray_tag* ptr_vec_to_handle_vec<caffe::Blob<float> >(std::__1::vector<boost::shared_ptr<caffe::Blob<float> >, std::__1::allocator<boost::shared_ptr<caffe::Blob<float> > > > const&) in caffe_.o
...
"_mxGetDimensions_700", referenced from:
write_mean(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
"_mxGetField_700", referenced from:
caffe::Solver<float>* handle_to_ptr<caffe::Solver<float> >(mxArray_tag const*) in caffe_.o
caffe::Net<float>* handle_to_ptr<caffe::Net<float> >(mxArray_tag const*) in caffe_.o
caffe::Layer<float>* handle_to_ptr<caffe::Layer<float> >(mxArray_tag const*) in caffe_.o
caffe::Blob<float>* handle_to_ptr<caffe::Blob<float> >(mxArray_tag const*) in caffe_.o
"_mxGetNumberOfDimensions_700", referenced from:
write_mean(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
"_mxGetNumberOfElements", referenced from:
blob_reshape(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
mx_mat_to_blob(mxArray_tag const*, caffe::Blob<float>*, WhichMemory) in caffe_.o
"_mxGetPr", referenced from:
net_get_attr(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
blob_get_shape(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
blob_reshape(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
"_mxGetScalar", referenced from:
solver_step(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
set_device(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
caffe::Solver<float>* handle_to_ptr<caffe::Solver<float> >(mxArray_tag const*) in caffe_.o
caffe::Net<float>* handle_to_ptr<caffe::Net<float> >(mxArray_tag const*) in caffe_.o
caffe::Layer<float>* handle_to_ptr<caffe::Layer<float> >(mxArray_tag const*) in caffe_.o
caffe::Blob<float>* handle_to_ptr<caffe::Blob<float> >(mxArray_tag const*) in caffe_.o
"_mxIsChar", referenced from:
get_solver(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
solver_restore(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
get_net(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
net_copy_from(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
net_save(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
read_mean(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
write_mean(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
...
"_mxIsDouble", referenced from:
solver_step(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
blob_reshape(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
set_device(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
"_mxIsSingle", referenced from:
blob_set_data(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
blob_set_diff(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
write_mean(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
"_mxIsStruct", referenced from:
solver_get_attr(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
solver_get_iter(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
solver_restore(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
solver_solve(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
solver_step(int, mxArray_tag**, int, mxArray_tag const**) in caffe_.o
net_get_attr(int, mxArray_tag**, int, mxArray_tag const**) in
make: *** [matlab/+caffe/private/caffe_.mexmaci64] Error 255