Matlab C混合编程配置
来源:互联网 发布:淘宝美化图片的软件 编辑:程序博客网 时间:2024/04/25 10:04
近日在使用莱斯大学的GPSR算法的时候遇到了Matlab 和 C混合编程的问题,个人被困扰了一段时间但是找到了解决办法,现记录如下:
系统:OSX 10.11.6
Matlab:R2015a Mac版
Xcode: 8.2.1
首先将xcode7_mexopts.zip下载到download目录下
然后打开Matlab依次输入:
系统:OSX 10.11.6
Matlab:R2015a Mac版
Xcode: 8.2.1
首先将xcode7_mexopts.zip下载到download目录下
然后打开Matlab依次输入:
- >>cd( prefdir );
- >>cd( fullfile( matlabroot, 'bin', 'maci64', 'mexopts' ) );
- >>mkdir mexoptsContentsOLD;
- >>movefile *.xml mexoptsContentsOLD/
- >>movefile( '~/Downloads/xcode7_mexopts/*.xml', '.' );
- >>mex -setup
- 这样做后提示还是找不到SDK,查了https://cn.mathworks.com/matlabcentral/answers/303369-mex-cannot-find-a-supported-compiler-in-matlab-r2015b-after-i-upgraded-to-xcode-8-0后找到了原因 ,处理方法如下:
- 转到文件夹/Applications/MATLAB_R2015b.app/bin/maci64/mexopts并在Matlab中直接打开编辑编辑文件clang ++ _ maci64.xml和clang_maci64.xml。在这两个文件中,搜索包含字符串MacOSX10.10.sdk或MacOSX10.11.sdk的行。复制该行并将其更改为MacOSX10.12.sdk。您将需要在两个文件中的每一个文件中更改4行总数,一行提及dirExists,然后是一行,再次提及cmdReturns,然后再同一个。
- 这样做后使用mex -setup即出现如下提示:
- MEX configured to use 'Xcode with Clang' for C language compilation.
- Warning: The MATLAB C and Fortran API has changed to support MATLAB
- variables with more than 2^32-1 elements. In the near future
- you will be required to update your code to utilize the
- new API. You can find more information about this at:
- http://www.mathworks.com/help/matlab/matlab_external/upgrading-mex-files-to-use-64-bit-api.html.
- To choose a different language, select one from the following:
- mex -setup C++
- mex -setup FORTRAN
- 表明可以用C编程
- 然后使用 mex hello.c(类似c文件)即可编译得到mexmaci64格式(类似windows的dll)的文件,再通过Matlab运行相关函数时即可自动使用该文件进行编程,不会出现找不到原函数的情况。
0 0
- Matlab C混合编程配置
- Matlab C混合编程
- matlab C混合编程
- Matlab C混合编程
- matlab/C 混合编程
- Matlab和C混合编程
- matlab与C混合编程
- c和matlab混合编程
- matlab与c混合编程
- matlab与C混合编程
- C和MATLAB混合编程
- MATLAB与C混合编程
- matlab与c混合编程
- Matlab C/C++ 混合编程
- Matlab、C++、OpenCV混合编程
- matlab与c(c++)混合编程
- matlab与C++/C 混合编程
- C/C++与Matlab engine 混合编程
- session_set_cookie_params()
- IIS文件上传、下载MIME类型设置和文件大小设置
- 【bzoj2453】维护队列
- JAVA中protected的作用
- 【编译原理】高级语言及其语法描述
- Matlab C混合编程配置
- 博客测试
- poj1200(字符串哈希)
- 第12期 《田家少闲月》5月刊
- vim和ctags配置(ubuntu)
- 【Java】多线程通信
- Java插入排序(1、直接插入排序2、希尔排序)
- Error:incomplete type is not allowed
- Android ListView中CheckBox取值问题