- 1、本文档共13页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Linux平台下C
Linux平台下
C/C++ 与Matlab混合编程相关技术说明
拟制: 李邦柱 日期: 2014-9-5 审核: 日期: 批准: 日期:
文档编号:YFZX-LIBZ-002
创建日期:2014-9-5
最后修改日期:2014-09-05
版 本 号:V1.0
电子版文件名:Linux平台下C/C++ 与Matlab 混合编程相关技术说明.doc
文档修改记录
修改日期 修改人 修改说明 版本号 修改页
目 录
1 概述 3
1.1 Matlab简介 3
1.2 什么是Matlab引擎 3
2 启动Matlab前相关环境设置 4
2.1 matlab引擎依赖条件 4
2.2 matlab引擎依赖的动态库文件目录必须在系统当前的库函数有哪些信誉好的足球投注网站路径中 4
2.3 用gcc或者g++ 编译 4
2.4 相关环境设置总结: 4
3 Matlab与C的接口函数介绍 5
3.1 Matlab引擎的启动与关闭 5
3.2 创建和清除mxArray类型的数据 6
3.3 管理mxArray的数据类型 7
3.3.1 管理mxArray数据大小 7
3.3.2 判断mxArray数组类型 7
3.3.3 管理mxArray数组的数据 8
3.4 调用引擎时显示/隐藏Matlab主窗口 8
3.5 读写Matlab数据 8
3.5.1 从Matlab引擎工作空间中获取变量 8
3.5.2 向Matlab引擎工作空间写入变量 9
3.6 向Matlab发送命令字符串 9
3.7 获取Matlab命令窗口的输出 9
4 C调用Matlab quadprog函数接口示例 10
概述
Matlab简介
MATLAB是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。MATLAB应用非常之广泛!
MATLAB 亦可以与其他高级语言C/ C++/ C#/Java/Fortran等进行混合编程。
什么是Matlab引擎
所谓Matlab引擎(engine),是指一组Matlab提供的接口函数,支持C/C++、Fortran等语言,通过这些接口函数,用户可以在其它编程环境中实现对Matlab的控制。
启动Matlab前相关环境设置
matlab引擎依赖条件
matlab引擎依赖/bin/csh启动,所以不管你使用何种shell,都必须安装csh
#yum install chs (centos/redhat平台)
#apt-get install chs (ubuntu平台)
matlab引擎依赖的动态库文件目录必须在系统当前的库函数有哪些信誉好的足球投注网站路径中
即可以设置环境
LD_LIBRARY_PATH= /usr/local/matlab/bin/glnx86 (ps:32环境下)
LD_LIBRARY_PATH=/usr/local/matlab/bin/glnxa64 (ps:64 环境下)
用gcc或者g++ 编译
编写好的程序编译时需要指定头文件目录,链接时需要指定库文件目录,并且需要指定所需要的库文件
相关命令如下:
#gcc -I/usr/local/matlab/extern/include -o matlab.o matlab.c
#gcc -L/usr/local/matlab/bin/glnx86 -Wl,-rpath,/usr/local/matlab/bin/glnx86 -o matlab matlab.o -leng -lmx
相关环境设置总结:
上述2.1 2.2 2.3对如何编译C与matlab 进行了说明,但是步骤较多,程序编译较为繁琐。因为我们可以通过一次环境变量的设置来达到这种目的。
export PATH=$PATH:/usr/local/matlab/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/matlab/bin/glnxa64
export C_INCLUDE_PATH=$C_INCLUDE_PATH:/usr/local/matlab/extern/include
export LIBRARY_PATH=$LIBRARY_PATH:/usr/local/matlab/bin/glnxa64
把上述环境变量的设置写进文件名为xx.env的文件中,然后使用命令source执行
#source x
文档评论(0)