Ubuntu下设置matlab默认工作路径

1. Method 1

First. sudo gedit /usr/local/MATLAB/R2014a/toolbox/local/startup.m
Second. cd ‘/home/yczhang/Documents/mymatlabPath’

But, sometimes the Method 1 doesn’t work, then we need the Method 2:

2. Method 2

First. sudo gedit /usr/local/MATLAB/R2014a/toolbox/local/matlabrc.m
Second. cd ‘/home/yczhang/Documents/mymatlabPath’

Ubuntu系统中,将MATLAB生成的DLL(动态链接库)用于Qt应用程序通常需要以下几个步骤: 1. **安装依赖**: - 首先确保已经安装了MATLAB R20XX版本及其产生的 mex文件(.mexa64或.mexw64),因为Qt项目默认针对的是64位Linux。 - 安装libstdc++和libgcc-dev等开发工具包,这对于动态链接非常重要。 2. **MATLAB Mex文件**: - 使用MATLAB编写MEX函数,并通过`mex -setup`命令配置MATLAB与系统的链接路径,以便能找到所需的库。 3. **构建MATLAB DLL**: - 编译MATLAB MEX函数生成的DLL文件,确保它可以在Linux上运行。MATLAB可能会提供特定于平台的编译指南。 4. **复制到Qt目录**: - 将MATLAB生成的DLL放到Qt项目的适当位置,比如`./lib`或`./plugins`目录下,这取决于您的应用如何组织插件。 5. **Qt中使用DLL**: - 在Qt中,可以通过QLibrary或QLibraryInfo加载DLL。例如: ```cpp QLibrary lib("path_to_your_dll"); void* func = lib.resolve("function_name"); // 函数名 if (func) { // 调用函数 (*reinterpret_cast<void(*)()>(func))(); } else { qCritical("Function not found in the library."); } ``` 或者在头文件中包含库并在构造函数中加载: ```cpp class MyClass : public QObject { Q_OBJECT public: explicit MyClass(QLibrary *lib, QObject *parent = nullptr) : QObject(parent), myLib(lib) { if (!myLib.load("path_to_your_dll")) { qCritical("Failed to load MATLAB DLL."); } // 然后你可以像下面一样使用函数 myFunc(); } private slots: void myFunc() { void(*myFuncPointer)(); myFuncPointer = (void(*)())myLib.resolve("function_name"); if (myFuncPointer) { (*myFuncPointer)(); } } private: QLibrary *myLib; }; ``` 6. **处理错误**: - 当加载或调用DLL中的函数时,一定要注意异常处理,因为跨语言交互可能出现错误。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值