reza@ubuntu:~$ cd /home/reza/Develop/caffe
reza@ubuntu:~/Develop/caffe$ make matcaffe
MEX matlab/+caffe/private/caffe_.cpp
Building with 'g++'.
Warning: You are using gcc version '4.8.4'. The version of gcc is not supported. The version currently supported with MEX is '4.7.x'. For a list of currently supported compilers see: http://www.mathworks.com/support/compilers/current_release.
Warning: You are using gcc version '4.8.4-2ubuntu1~14.04.3)'. The version of gcc is not supported. The version currently supported with MEX is '4.7.x'. For a list of currently supported compilers see: http://www.mathworks.com/support/compilers/current_release.
/home/reza/Develop/caffe/matlab/+caffe/private/caffe_.cpp: In function ‘void delete_solver(int, mxArray**, int, const mxArray**)’:
/home/reza/Develop/caffe/matlab/+caffe/private/caffe_.cpp:208:3: warning: lambda expressions only available with -std=c++11 or -std=gnu++11 [enabled by default]
}), solvers_.end());
^
/home/reza/Develop/caffe/matlab/+caffe/private/caffe_.cpp:208:4: error: no matching function for call to ‘remove_if(std::vector<boost::shared_ptr<caffe::Solver<float> > >::iterator, std::vector<boost::shared_ptr<caffe::Solver<float> > >::iterator, delete_solver(int, mxArray**, int, const mxArray**)::__lambda0)’
}), solvers_.end());
^
/home/reza/Develop/caffe/matlab/+caffe/private/caffe_.cpp:208:4: note: candidate is:
In file included from /usr/include/c++/4.8/algorithm:62:0,
from ./include/caffe/blob.hpp:4,
from ./include/caffe/caffe.hpp:7,
from /home/reza/Develop/caffe/matlab/+caffe/private/caffe_.cpp:18:
/usr/include/c++/4.8/bits/stl_algo.h:1134:5: note: template<class _FIter, class _Predicate> _FIter std::remove_if(_FIter, _FIter, _Predicate)
remove_if(_ForwardIterator __first, _ForwardIterator __last,
^
/usr/include/c++/4.8/bits/stl_algo.h:1134:5: note: template argument deduction/substitution failed:
/home/reza/Develop/caffe/matlab/+caffe/private/caffe_.cpp: In substitution of ‘template<class _FIter, class _Predicate> _FIter std::remove_if(_FIter, _FIter, _Predicate) [with _FIter = __gnu_cxx::__normal_iterator<boost::shared_ptr<caffe::Solver<float> >*, std::vector<boost::shared_ptr<caffe::Solver<float> > > >; _Predicate = delete_solver(int, mxArray**, int, const mxArray**)::__lambda0]’:
/home/reza/Develop/caffe/matlab/+caffe/private/caffe_.cpp:208:4: required from here
/home/reza/Develop/caffe/matlab/+caffe/private/caffe_.cpp:208:4: error: template argument for ‘template<class _FIter, class _Predicate> _FIter std::remove_if(_FIter, _FIter, _Predicate)’ uses local type ‘delete_solver(int, mxArray**, int, const mxArray**)::__lambda0’
}), solvers_.end());
^
/home/reza/Develop/caffe/matlab/+caffe/private/caffe_.cpp:208:4: error: trying to instantiate ‘template<class _FIter, class _Predicate> _FIter std::remove_if(_FIter, _FIter, _Predicate)’
/home/reza/Develop/caffe/matlab/+caffe/private/caffe_.cpp: In function ‘void delete_net(int, mxArray**, int, const mxArray**)’:
/home/reza/Develop/caffe/matlab/+caffe/private/caffe_.cpp:293:3: warning: lambda expressions only available with -std=c++11 or -std=gnu++11 [enabled by default]
}), nets_.end());
^
/home/reza/Develop/caffe/matlab/+caffe/private/caffe_.cpp:293:4: error: no matching function for call to ‘remove_if(std::vector<boost::shared_ptr<caffe::Net<float> > >::iterator, std::vector<boost::shared_ptr<caffe::Net<float> > >::iterator, delete_net(int, mxArray**, int, const mxArray**)::__lambda1)’
}), nets_.end());
^
/home/reza/Develop/caffe/matlab/+caffe/private/caffe_.cpp:293:4: note: candidate is:
In file included from /usr/include/c++/4.8/algorithm:62:0,
from ./include/caffe/blob.hpp:4,
from ./include/caffe/caffe.hpp:7,
from /home/reza/Develop/caffe/matlab/+caffe/private/caffe_.cpp:18:
/usr/include/c++/4.8/bits/stl_algo.h:1134:5: note: template<class _FIter, class _Predicate> _FIter std::remove_if(_FIter, _FIter, _Predicate)
remove_if(_ForwardIterator __first, _ForwardIterator __last,
^
/usr/include/c++/4.8/bits/stl_algo.h:1134:5: note: template argument deduction/substitution failed:
/home/reza/Develop/caffe/matlab/+caffe/private/caffe_.cpp: In substitution of ‘template<class _FIter, class _Predicate> _FIter std::remove_if(_FIter, _FIter, _Predicate) [with _FIter = __gnu_cxx::__normal_iterator<boost::shared_ptr<caffe::Net<float> >*, std::vector<boost::shared_ptr<caffe::Net<float> > > >; _Predicate = delete_net(int, mxArray**, int, const mxArray**)::__lambda1]’:
/home/reza/Develop/caffe/matlab/+caffe/private/caffe_.cpp:293:4: required from here
/home/reza/Develop/caffe/matlab/+caffe/private/caffe_.cpp:293:4: error: template argument for ‘template<class _FIter, class _Predicate> _FIter std::remove_if(_FIter, _FIter, _Predicate)’ uses local type ‘delete_net(int, mxArray**, int, const mxArray**)::__lambda1’
}), nets_.end());
^
/home/reza/Develop/caffe/matlab/+caffe/private/caffe_.cpp:293:4: error: trying to instantiate ‘template<class _FIter, class _Predicate> _FIter std::remove_if(_FIter, _FIter, _Predicate)’
make: *** [matlab/+caffe/private/caffe_.mexa64] Error 255
reza@ubuntu:~/Develop/caffe$
$ sudo apt install gcc-4.7 g++-4.7
آره از اوبونتو 14.04 استفاده میکنم
gcc 4.7 رو هم نصب کردم ولی باز این ارور رو میده:
http://upload.ustmb.ir/uploads/01_171496305423281.png
بدون sudo هم زدم.این ارور رو داد:اینکه میگه g++ نصب نداری. چک کن ببینی، پاکش نکردی.
http://upload.ustmb.ir/uploads/01_171496322280181.png
$ g++ --version
$ g++-4.7 --version
$ alias g++=g++-4.7
خوب الآن بزن توی ترمینال، تا ببینی که به ۴.۷ وصل شده یا نه.$ g++ --version
$ cd
$ echo 'alias g++=g++-4.7' >> .bash_aliases
$ source .bash_aliases
نه فقط شما میدونی چیه!اگر میخواید جواب بگیرید بهتره با رعایت ادب، جواب سوال رو بدید، چون برای من هم واقعا سواله!
من میخوام متلب رو کامپایل کنممیدونید این نرمافزاری که کامپایل میکنید متلب نیست دیگه؟