在QT中使用MATLAB共享库

时间:2016-04-02 12:04:06

标签: matlab qt

我将在我的QT计划中使用MATLAB共享库。

  • 操作系统:Ubuntu 15.10
  • MATLAB版本:MATLAB 2015b
  • QT版本:QT 5.5.1

我写了一个简单的MATLAB函数。

function a = libcalsin(b)
a = b + 4;
end % end of function

然后我使用MATLAB Library Compiler生成.so和.h文件。

Please see this image

因此输出文件是: libcalsin.so libcalsin.h 。我将这些文件复制到我的QT项目中,并使用QT Creator将#libcalsin库添加到我的QT项目中#34;添加库"特征。因此,以下行自动添加到我的.pro文件中:

unix:!macx: LIBS += -L$$PWD/./ -lcalsin
INCLUDEPATH += $$PWD/.
DEPENDPATH += $$PWD/. 

在此步骤中,我安装了MATLAB 2015运行时引擎并使用 export 命令添加运行时库路径:

export LD_LIBRARY_PATH=/usr/local/MATLAB/MATLAB_Runtime/v90/runtime/glnxa64:/usr/local/MATLAB/MATLAB_Runtime/v90/bin/glnxa64:/usr/local/MATLAB/MATLAB_Runtime/v90/sys/os/glnxa64:

然后在我的.pro文件中添加以下行:

unix:!macx: LIBS += -L/usr/local/MATLAB/MATLAB_Runtime/v90/runtime/glnxa64/ -lmwmclmcrrt
INCLUDEPATH += /usr/local/MATLAB/MATLAB_Runtime/v90/extern/include
DEPENDPATH += /usr/local/MATLAB/MATLAB_Runtime/v90/extern/include

但是当我运行程序时,我面临以下运行时错误:

An Error has occurred while trying to initialize the MATLAB Runtime.  
The error is: Fatal error loading library /usr/local/MATLAB/MATLAB_Runtime/v90/bin/glnxa64/libmat.so Error: /usr/local/MATLAB/MATLAB_Runtime/v90/bin/glnxa64/libicuio.so.54: undefined symbol: _ZN6icu_5413UnicodeString9doReplaceEiiPKDsii

0 个答案:

没有答案