记Windows10下Matlab R2018a和Visual Studio 2019混合编程配置过程
1. Matlab R2018a和Visual Studio 2019下载安装
2. Visual Studio环境配置
·[打开]Visual Studio 2019社区版->创建新项目->空项目->[填写地址和项目名]->创建.
·[右击]项目名->属性->VC++目录->包含目录,添加:
(Matlab R2018a的安装目录)\extern\include\win64
(Matlab R2018a的安装目录)\extern\include
· [左击]应用.
· [右击]项目->属性->VC++目录->库目录:添加:
(Matlab R2018a的安装目录)\extern\lib\win32\microsoft
· [左击]应用->确定.
果然出问题了,以下是解决方式:
- convertToMat()函数发现无法解析的外部命令:
-
经排查发现,matOpen()等三个无法解释的符号都是mat.h头文件内的,初步猜测matlab配置不当。
-
那么查找解决方案,进行了下述操作:
-
- \1. 修改系统环境变量
在系统环境变量中添加:
C:\Program Files\MATLAB\R2016a\extern\lib\win64
C:\Program Files\MATLAB\R2016a\bin\win64;如果是32位系统,则修改为32位系统对应的路径。
- \2. 新建一个VS工程
打开工程属性页,将“配置”选择为‘所有配置’,“平台”选择为‘x64’,然后依次设置包含目录、链接附加库目录以及附加依赖库:
在 C+±>常规->附加包含目录 添加:
C:\Program Files\MATLAB\R2016a\extern\include
C:\Program Files\MATLAB\R2016a\extern\include\win64在 链接器->常规->附加库目录 添加:
C:\Program Files\MATLAB\R2016a\extern\lib\win64\microsoft
C:\Program Files\MATLAB\R2016a\extern\lib\win32\microsoft在 链接器->输入->附加依赖库 添加:
libmat.lib
libmx.lib
libmex.lib
libeng.lib -
再次报错,不过已经不再显示之前的问题:
-
检查环境变量中是否有\Matlab2018a\bin\win64,以及该目录下是否存在libmat.dll:
-
额…这就奇怪了。于是我尝试将libmat.dll放在System32下,发现就找到libmat.dll了,但是其他dll还是找不到。尝试重启VS2019。
-
OK!能运行了,踏出了第一步。