用matlab调用vs2015来编译vs工程
用matlab调用vs2015来编译vs工程
一、背景:
在测试仿真模型的时候需要自动化批量测试。而模型的输入是一个加密的任务文件。这个文件是大佬用cpp写的,需要用vs编译。
二、目的:
因此我想要实现的功能就是:
- 用matlab脚本设置不同任务信息,自动生成不同的cpp程序。
- 调用vs编译,生成加密的任务文件
- 调用simulink运行模型,仿真任务执行情况
- 对比任务执行情况和m脚本设置时预计的情况
这样就可以在matlab环境下实现全流程仿真测试。
三、实现
基本实现思路是用matlab脚本中用dos命令实现对vs的调用。
(这种方法其实可以实现对所有软件的调用)
3.1. 配置环境
首先需要添加环境变量,把需要的头文件include和库文件lib加进去
新建一个变量,名为include(不区分大小写),然后变量值有如下两个:
D:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include
C:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A\Include
类似地,新建一个变量,名为lib(不区分大小写),然后变量值有如下两个:
D:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\lib
C:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A\Lib
其他的如果有必要,就也加上:
在include下添加:
C:\Program Files (x86)\Windows Kits\10\Include\10.0.10240.0\ucrt
在lib下添加:
C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\x86
为了能在命令行使用devenv命令,还需要在path下添加:
D:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin
D:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE
3.2. 自动编译的dos命令
添加完这些环境之后,如果想编译普通的cpp程序,可以在命令行使用命令:
cl xxx_main.cpp
但是编译工程还是不行,需要用到下面的命令:
devenv "TestProg.sln" /Rebuild Debug /project "xxx\TestProg.vcxproj"
会编译出可执行程序,然后再运行可执行程序即可
3.3. matlab脚本
这部分值得展开的,
需要注意的是,如果想在某个目录下执行什么dos命令
需要直接cd(‘xxxx’)进去。
而不能 dos(‘cd xxxxxx’)
把上面在命令行执行的命令,在matlab脚本里用dos调用即可
如:
dos('devenv "TestProg.sln" /Rebuild Debug /project "xxx\TestProg.vcxproj"')
用matlab调用vs2015来编译vs工程相关推荐
- VS2015打开编译VS2013工程时提示fatal error C1083: 无法打开包括文件: “afxwin.h”: No such file or directory
VS2015打开并编译VS2013工程时,显示fatal error C1083: 无法打开包括文件: "afxwin.h": No such file or directory ...
- matlab2014调用vs2015进行混合编译生成mex文件
一.matlab调用vs2015进行混合编译的mex文件 matlab的版本要到2015b才支持vs2015,当然如果你的matlab版本是2014,不想重装matlab2015也行,需要替换其mex ...
- matlab 调用c++编译好的文件出现问题
sys/os/glnxa64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found matlab 调用c++编译好的文件出现问题 https://blo ...
- VS2015平台编译mini-caffe
并且配置好了依赖.直接按照官网的步骤即可按照,只需把vs 2013 的cmake 选项换成vs 2017 即可. ssd demo: 代码mini caffe自带的有,下面有opencv调用代码和模型 ...
- matlab dll没有头文件,matlab调用dll没有头文件怎么办
2018-12-08 回答 基于dll形式vc调用matlab函数方法 如果在一matlab中或vc中写好了函数的话,想在对方的环境中使用,直接将对方语言的函数编译成dll是一个很方便的方法,不需要重 ...
- matlab安装第三方库,Matlab调用cpp+第三方库
问题描述:Matlab调用CPP不新鲜,无非就是把写好的c语言编译成mex,然后直接调用呗.很多帖子和书都有描述.具体可以参考附录.这里描述的是如何用Matlab调用Opencv库支持的函数.解决方法 ...
- c++引用matlab类,matlab调用C++函数浅谈(一)
由于在下才疏学浅,在网上看各高手指南时亦觉云里雾里,遂决定一切说明从最基础说起,一是方便自己(记性奇差),二是方便似我的小白.以下部分是我从各网站论坛等摘抄.重组.改写过的,以求更加详实明朗,由于参考 ...
- matlab调用q外部exe文件,Matlab GUI调用外部程序生成exe,DOS窗口输入问题
本帖最后由 gouliang 于 2019-12-23 09:37 编辑 主程序: clc;clear import java.awt.Robot import java.awt.event.* ke ...
- matlab 调用opencv,matlab调用opencv (mac 或 linux)
思路为利用mexopencv编译opencv为mex,然后让MATLAB调用. 方法1 (仅适用于mac) 利用homebrew下载opencv3. $ brew install pkg-config ...
最新文章
- 社区资源 | NeurIPS 2020预讲会回放资料(含PPT)
- Java中对象的储存区
- python docker自动化_自动化 – 自动创建docker容器并启动python脚本
- LeetCode 787. K 站中转内最便宜的航班(Dijkstra最短路径 + 优先队列)
- linux 数据处理软件,【shell笔记文本处理|专项】Linux数据文本处理工具(2)
- javaweb(06) 初步了解HTTP协议
- 临时更换swap优先级
- 大数据分析平台的作用有什么
- 唐宇迪学习笔记2:Python数据分析处理库——pandas
- 环境影响评价期末考试题库
- 轻松搞明白:软切换和硬切换的区别
- 鼠标移入以及移出时图标背景透明效果
- ssms远程服务器地址,SSMS无法连接到远程服务器,崩溃
- Shorten the command line via JAR manifest or via a classpath file and rerun.
- 云上办公便捷、安全,就用华为云桌面
- golang控制结构之select
- .Net asp.net MVC 实现短信验证
- 15道HTML5基础面试题(附答案)
- P1085 [NOIP2004 普及组第一题] 不高兴的津津 ← 模拟题
- 几何向量:空间三角形外心和法向量