我正在尝试在Ubuntu 13.04(64位)上运行以下链接中给出的代码:
https://github.com/bensapp/Stretchable-Models-for-Motion-Parsing
我收到以下错误:
INVALID MEX FILE:'filepath / cps / utils / mex_opencv_boosting.mexa64':filepath / cps / utils / mex_opencv_bosting.mexa64:undefined symbol:_ZN7CvBoostC1EPKc。
有人可以帮我修复此错误吗?
谢谢
当我运行命令lld mex_opencv_boosting.mexa64时,我得到以下输出。一切似乎都很好。
linux-vdso.so.1 => (0x00007fff7c588000)
libcxcore.so.4 => filepath/cps/thirdparty/OpenCV-2.0.0/lib/libcxcore.so.4 (0x00007ff8f63b0000)
libcv.so.4 => filepath/cps/thirdparty/OpenCV-2.0.0/lib/libcv.so.4 (0x00007ff8f5f2b000)
libml.so.4 => filepath/cps/thirdparty/OpenCV-2.0.0/lib/libml.so.4 (0x00007ff8f5c9e000)
libhighgui.so.4 => filepath/cps/thirdparty/OpenCV-2.0.0/lib/libhighgui.so.4 (0x00007ff8f5a70000)
libmx.so => /usr/local/MATLAB/R2014a/bin/glnxa64/libmx.so (0x00007ff8f5748000)
libmex.so => /usr/local/MATLAB/R2014a/bin/glnxa64/libmex.so (0x00007ff8f5523000)
libmat.so => /usr/local/MATLAB/R2014a/bin/glnxa64/libmat.so (0x00007ff8f52d3000)
libstdc++.so.6 => /usr/local/MATLAB/R2014a/sys/os/glnxa64/libstdc++.so.6 (0x00007ff8f4fcb000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007ff8f4c9a000)
libgcc_s.so.1 => /usr/local/MATLAB/R2014a/sys/os/glnxa64/libgcc_s.so.1 (0x00007ff8f4a85000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007ff8f4867000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007ff8f449f000)
librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007ff8f4297000)
libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007ff8f407d000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007ff8f3e79000)
libgomp.so.1 => /usr/lib/x86_64-linux-gnu/libgomp.so.1 (0x00007ff8f3c6a000)
libpng12.so.0 => /usr/local/MATLAB/R2014a/bin/glnxa64/libpng12.so.0 (0x00007ff8f3a43000)
libmwresource_core.so => /usr/local/MATLAB/R2014a/bin/glnxa64/libmwresource_core.so (0x00007ff8f3841000)
libmwi18n.so => /usr/local/MATLAB/R2014a/bin/glnxa64/libmwi18n.so (0x00007ff8f3567000)
libut.so => /usr/local/MATLAB/R2014a/bin/glnxa64/libut.so (0x00007ff8f32ad000)
libmwfl.so => /usr/local/MATLAB/R2014a/bin/glnxa64/libmwfl.so (0x00007ff8f2eb1000)
libmwMATLAB_res.so => /usr/local/MATLAB/R2014a/bin/glnxa64/libmwMATLAB_res.so (0x00007ff8f28ab000)
libboost_date_time.so.1.49.0 => /usr/local/MATLAB/R2014a/bin/glnxa64/libboost_date_time.so.1.49.0 (0x00007ff8f269a000)
libboost_signals.so.1.49.0 => /usr/local/MATLAB/R2014a/bin/glnxa64/libboost_signals.so.1.49.0 (0x00007ff8f2482000)
libboost_system.so.1.49.0 => /usr/local/MATLAB/R2014a/bin/glnxa64/libboost_system.so.1.49.0 (0x00007ff8f227e000)
libboost_thread.so.1.49.0 => /usr/local/MATLAB/R2014a/bin/glnxa64/libboost_thread.so.1.49.0 (0x00007ff8f2063000)
libmwcpp11compat.so => /usr/local/MATLAB/R2014a/bin/glnxa64/libmwcpp11compat.so (0x00007ff8f1e56000)
libboost_log.so.1.49.0 => /usr/local/MATLAB/R2014a/bin/glnxa64/libboost_log.so.1.49.0 (0x00007ff8f1b77000)
libboost_log_setup.so.1.49.0 => /usr/local/MATLAB/R2014a/bin/glnxa64/libboost_log_setup.so.1.49.0 (0x00007ff8f1665000)
libicudata.so.49 => /usr/local/MATLAB/R2014a/bin/glnxa64/libicudata.so.49 (0x00007ff8f0345000)
libicuuc.so.49 => /usr/local/MATLAB/R2014a/bin/glnxa64/libicuuc.so.49 (0x00007ff8effbc000)
libicui18n.so.49 => /usr/local/MATLAB/R2014a/bin/glnxa64/libicui18n.so.49 (0x00007ff8efbad000)
libicuio.so.49 => /usr/local/MATLAB/R2014a/bin/glnxa64/libicuio.so.49 (0x00007ff8ef9a0000)
libtbb.so.2 => /usr/local/MATLAB/R2014a/bin/glnxa64/libtbb.so.2 (0x00007ff8ef859000)
libtbbmalloc.so.2 => /usr/local/MATLAB/R2014a/bin/glnxa64/libtbbmalloc.so.2 (0x00007ff8ef724000)
libmwservices.so => /usr/local/MATLAB/R2014a/bin/glnxa64/libmwservices.so (0x00007ff8ef158000)
libmwmpath.so => /usr/local/MATLAB/R2014a/bin/glnxa64/libmwmpath.so (0x00007ff8eef11000)
libmwm_dispatcher.so => /usr/local/MATLAB/R2014a/bin/glnxa64/libmwm_dispatcher.so (0x00007ff8eec3d000)
libboost_filesystem.so.1.49.0 => /usr/local/MATLAB/R2014a/bin/glnxa64/libboost_filesystem.so.1.49.0 (0x00007ff8eea1d000)
libhdf5_hl.so.6 => /usr/local/MATLAB/R2014a/bin/glnxa64/libhdf5_hl.so.6 (0x00007ff8ee7f0000)
libhdf5.so.6 => /usr/local/MATLAB/R2014a/bin/glnxa64/libhdf5.so.6 (0x00007ff8ee371000)
/lib64/ld-linux-x86-64.so.2 (0x00007ff8f6a53000)
libexpat.so.1 => /usr/local/MATLAB/R2014a/bin/glnxa64/libexpat.so.1 (0x00007ff8ee149000)
libcrypt.so.1 => /lib/x86_64-linux-gnu/libcrypt.so.1 (0x00007ff8edf0f000)
libboost_chrono.so.1.49.0 => /usr/local/MATLAB/R2014a/bin/glnxa64/libboost_chrono.so.1.49.0 (0x00007ff8edd08000)
libboost_regex.so.1.49.0 => /usr/local/MATLAB/R2014a/bin/glnxa64/libboost_regex.so.1.49.0 (0x00007ff8ed9ec000)
libboost_serialization.so.1.49.0 => /usr/local/MATLAB/R2014a/bin/glnxa64/libboost_serialization.so.1.49.0 (0x00007ff8ed774000)
libunwind.so.8 => /usr/local/MATLAB/R2014a/bin/glnxa64/libunwind.so.8 (0x00007ff8ed556000)
libmwregexp.so => /usr/local/MATLAB/R2014a/bin/glnxa64/libmwregexp.so (0x00007ff8ed30d000)
libmwmlutil.so => /usr/local/MATLAB/R2014a/bin/glnxa64/libmwmlutil.so (0x00007ff8ecca9000)
libmwsettingscore.so => /usr/local/MATLAB/R2014a/bin/glnxa64/libmwsettingscore.so (0x00007ff8ec83b000)
libmwms.so => /usr/local/MATLAB/R2014a/bin/glnxa64/libmwms.so (0x00007ff8ec296000)
libmwMATLAB_settings_res.so => /usr/local/MATLAB/R2014a/bin/glnxa64/libmwMATLAB_settings_res.so (0x00007ff8ec073000)
libmwnativedisplay.so => /usr/local/MATLAB/R2014a/bin/glnxa64/libmwnativedisplay.so (0x00007ff8ebe6a000)
libmwopccore.so => /usr/local/MATLAB/R2014a/bin/glnxa64/libmwopccore.so (0x00007ff8ebc0b000)
libmwopcmodel.so => /usr/local/MATLAB/R2014a/bin/glnxa64/libmwopcmodel.so (0x00007ff8eb953000)
libmwopczippackage.so => /usr/local/MATLAB/R2014a/bin/glnxa64/libmwopczippackage.so (0x00007ff8eb737000)
libmwopcmwservices.so => /usr/local/MATLAB/R2014a/bin/glnxa64/libmwopcmwservices.so (0x00007ff8eb4dd000)
libboost_iostreams.so.1.49.0 => /usr/local/MATLAB/R2014a/bin/glnxa64/libboost_iostreams.so.1.49.0 (0x00007ff8eb2c7000)
libxerces-c.so.27 => /usr/local/MATLAB/R2014a/bin/glnxa64/libxerces-c.so.27 (0x00007ff8eace4000)
libncurses.so.5 => /lib/x86_64-linux-gnu/libncurses.so.5 (0x00007ff8eaac1000)
libmwxmlcore.so => /usr/local/MATLAB/R2014a/bin/glnxa64/libmwxmlcore.so (0x00007ff8ea84c000)
libminizip.so => /usr/local/MATLAB/R2014a/bin/glnxa64/libminizip.so (0x00007ff8ea63f000)
libtinfo.so.5 => /lib/x86_64-linux-gnu/libtinfo.so.5 (0x00007ff8ea415000)
答案 0 :(得分:0)
尝试以下
export LD_LIBRARY_PATH=filepath/cps/thirdparty/opencv/lib:$LD_LIBRARY_PATH
此后从终端运行MATLAB。你的代码应该运行。
我发现的是符号:_ZN7CvBoostC1EPKc存在于filepath / cps / thirdparty / opencv / lib / libml.so.4中
nm filepath/cps/thirdparty/opencv/lib/libml.so.4 | grep _ZN7CvBoostC1EPKc
不在文件filepath / cps / thirdparty / OpenCV-2.0.0 / lib / libml.so.4中,并以某种方式从MATLAB设置环境变量不起作用。在运行MATLAB之前导出LD_LIBRARY_PATH是必要的。