visual-tracking-matlab icon indicating copy to clipboard operation
visual-tracking-matlab copied to clipboard

ERROR: Unable to compile MEX function

Open JoseFRuiz opened this issue 6 years ago • 1 comments

I needed to modify the file "compile_mex" line 78 as follows:

mex('-compatibleArrayDims','-output', name, includes{:}, linkdirs{:}, libraries{:}, files{:}, arguments{:});

JoseFRuiz avatar Jan 30 '18 14:01 JoseFRuiz

I needed to modify the file "compile_mex" line 78 as follows:

mex('-compatibleArrayDims','-output', name, includes{:}, linkdirs{:}, libraries{:}, files{:}, arguments{:});

@JoseFRuiz @lukacu

I still got some errors following:

ERROR: Unable to compile MEX function: "/tmp/mex_51137015150432_28019/calcIIF.o: In function `doWork(cv::_InputArray const&, cv::Size_<int>, int)':
calcIIF.cpp:(.text+0x143): undefined reference to `cv::_InputArray::getMat_(int) const'
calcIIF.cpp:(.text+0x182): undefined reference to `cv::String::allocate(unsigned long)'
calcIIF.cpp:(.text+0x1e4): undefined reference to `cv::error(int, cv::String const&, char const*, char const*, int)'
calcIIF.cpp:(.text+0x1f0): undefined reference to `cv::String::deallocate()'
calcIIF.cpp:(.text+0x1128): undefined reference to `cv::String::deallocate()'
/tmp/mex_51137015150432_28019/calcIIF.o: In function `cvflann::anyimpl::big_any_policy<cv::String>::move(void* const*, void**)':
calcIIF.cpp:(.text._ZN7cvflann7anyimpl14big_any_policyIN2cv6StringEE4moveEPKPvPS5_[_ZN7cvflann7anyimpl14big_any_policyIN2cv6StringEE4moveEPKPvPS5_]+0x11): undefined reference to `cv::String::deallocate()'
calcIIF.cpp:(.text._ZN7cvflann7anyimpl14big_any_policyIN2cv6StringEE4moveEPKPvPS5_[_ZN7cvflann7anyimpl14big_any_policyIN2cv6StringEE4moveEPKPvPS5_]+0x25): undefined reference to `cv::String::deallocate()'
/tmp/mex_51137015150432_28019/calcIIF.o: In function `cvflann::anyimpl::big_any_policy<cv::String>::static_delete(void**)':
calcIIF.cpp:(.text._ZN7cvflann7anyimpl14big_any_policyIN2cv6StringEE13static_deleteEPPv[_ZN7cvflann7anyimpl14big_any_policyIN2cv6StringEE13static_deleteEPPv]+0x16): undefined reference to `cv::String::deallocate()'
/home/v4rhyj/Library/mexopencv/mexopencv-3.3.0/lib/libMxArray.a(MxArray.o): In function `MxArray::MxArray(cv::Mat const&, mxClassID, bool)':
MxArray.cpp:(.text+0x1445): undefined reference to `cv::String::allocate(unsigned long)'
MxArray.cpp:(.text+0x149a): undefined reference to `cv::error(int, cv::String const&, char const*, char const*, int)'
MxArray.cpp:(.text+0x14a6): undefined reference to `cv::String::deallocate()'
MxArray.cpp:(.text+0x15be): undefined reference to `cv::String::deallocate()'
MxArray.cpp:(.text+0x15ea): undefined reference to `cv::String::allocate(unsigned long)'
MxArray.cpp:(.text+0x163f): undefined reference to `cv::error(int, cv::String const&, char const*, char const*, int)'
MxArray.cpp:(.text+0x164b): undefined reference to `cv::String::deallocate()'
MxArray.cpp:(.text+0x16c3): undefined reference to `cv::String::deallocate()'
/home/v4rhyj/Library/mexopencv/mexopencv-3.3.0/lib/libMxArray.a(MxArray.o): In function `MxArray::toMatND(int, bool) const':
MxArray.cpp:(.text+0x1bc6): undefined reference to `cv::String::allocate(unsigned long)'
MxArray.cpp:(.text+0x1c2b): undefined reference to `cv::error(int, cv::String const&, char const*, char const*, int)'
MxArray.cpp:(.text+0x1c33): undefined reference to `cv::String::deallocate()'
MxArray.cpp:(.text+0x1c6c): undefined reference to `cv::String::allocate(unsigned long)'
MxArray.cpp:(.text+0x1cb3): undefined reference to `cv::error(int, cv::String const&, char const*, char const*, int)'
MxArray.cpp:(.text+0x1cbb): undefined reference to `cv::String::deallocate()'
MxArray.cpp:(.text+0x20e8): undefined reference to `cv::String::deallocate()'
MxArray.cpp:(.text+0x20ff): undefined reference to `cv::String::deallocate()'
/home/v4rhyj/Library/mexopencv/mexopencv-3.3.0/lib/libMxArray.a(MxArray.o): In function `MxArray::toMat(int, bool) const':
MxArray.cpp:(.text+0x221a): undefined reference to `cv::String::allocate(unsigned long)'
MxArray.cpp:(.text+0x227f): undefined reference to `cv::error(int, cv::String const&, char const*, char const*, int)'
MxArray.cpp:(.text+0x2287): undefined reference to `cv::String::deallocate()'
MxArray.cpp:(.text+0x233f): undefined reference to `cv::String::allocate(unsigned long)'
MxArray.cpp:(.text+0x2382): undefined reference to `cv::error(int, cv::String const&, char const*, char const*, int)'
MxArray.cpp:(.text+0x238e): undefined reference to `cv::String::deallocate()'
MxArray.cpp:(.text+0x2d87): undefined reference to `cv::String::deallocate()'
MxArray.cpp:(.text+0x2d9e): undefined reference to `cv::String::deallocate()'
collect2: error: ld returned 1 exit status
".Error using compile_native (line 46)
Unable to compile MEX files

can you give me some advice,thank you!

hibetterheyj avatar Dec 30 '18 09:12 hibetterheyj