1 问题

有个老模型采用的是matlab2011b版本建模,当时是32位系统,mex生成的可执行程序是*.mexw32的,随着电脑的升级,变成了64位系统,因此报出无法找到s-fun的错误;

2 解决

2.1 编译生成*.mexw64的目标文件

(1)安装VS2008(对应Matlab2011b版本),注意VS的版本一定更要比matlab的版本低,否则无法识别。

版本可以到如下MATLAB安装目录下看支持哪个版本的VS:

D:\App\MatlabR2011b\bin\win64\mexopts

(2)设置mex参数:

(3)编译

>> mex Sfun_usLookup_xy_us.c正在创建库 C:\Users\js\AppData\Local\Temp\mex_40Cy3a\templib.x 和对象 C:\Users\js\AppData\Local\Temp\mex_40Cy3a\templib.exp
xx1.obj : error LNK2019: 无法解析的外部符号 xx_xy_us,该符号在函数 mdlOutputs 中被引用
xx1.mexw64 : fatal error LNK1120: 1 个无法解析的外部命令 

出现这种情况是无法找到xx_xy_us函数对应的文件

办法:将对应的文件拷贝到同一目录下,同时加入编译,xx_xy_u函数被包含在xx_ft_simu.c中。

>> xxx1.c xx_ft_simu.c

顺利编译出*.mexw64的目标文件

编译过程中如果找不到.h的文件,则将.h文件放到VC2008的目录下:

D:\Apps\38_Microsoft Visual Studio_2008\VC\include

2.2 安装虚拟机

虚拟机中安装32位win系统,这样跑模型的时候可以沿用*.mexw32的目标文件。

虚拟机安装系统的时候需要先通过纯净版的xp系统文件引导XTC_GHOST_WIN10_32_2021_6.iso;然后安装虚拟机系统GHOST_WIN10_X86_VDL_2022_203072.iso

Matlab-mex相关推荐

  1. matlab::mex::ArgumentList outputs的创建

    C++ MEX Functions 的代码如下 #include "mex.hpp" #include "mexAdapter.hpp"class MexFun ...

  2. matlab编译错误怎么查找,matlab - Matlab mex文件编译错误-“未启用SSE2指令集” - 堆栈内存溢出...

    在Matlab中编译mex文件的工具箱时,出现以下错误: In file included from /home/josh/Desktop/Project/code/toolbox/channels/ ...

  3. matlab mex路径,使用matlab进行mex编译时的路径问题mexopts

    matlab和vs 进行混合编程时总需要使用matlab编译mexFunction.cpp文件.这些文件免不了使用include下的*.h和lib下的*.lib文件.举 matlab和vs 进行混合编 ...

  4. linux gcc matlab,Linux Matlab mex gcc 版本

    一般MATLAB的mex支持的gcc版本都比最新的gcc要低一些,所以一般要配置一下. 假设当前版本的gcc是4.8,matlab支持4.6,可以使用以下的方式解决(任选一种).(自己装好gcc-4. ...

  5. matlab mex 矩阵,如何从mex函数访问matlab结构字段中的矩阵?

    如何从mex函数访问matlab结构字段中的矩阵? 我试图弄清楚如何从mex函数访问存储在matlab结构中的字段中的矩阵. 那真是漫长的缠绕...让我解释一下: 我有一个定义如下的matlab结构: ...

  6. matlab mex入门简介

    mex 的目的 通过C/C++语言编写代码,在Matlab中将其编译成mex文件主要可以做以下几方面的事情: 1.加快程序的执行速度. Matlab在for上如老牛拉车的速度确实让人抓狂. 2.将Ma ...

  7. Matlab MEX

    如果我有一个用C语言写的函数,实现了一个功能,如一个简单的函数: double add(double x, double y) { return x + y; } 现在我想要在Matlab中使用它,比 ...

  8. matlab mex命令,matlab 调用mex

    装了visual studio 2015,可是在matlab中调用失败了. >> mex -setup Error using mex No supported compiler or S ...

  9. matlab mex使用vc,matlab和VC++混合编程(mex方法)【转帖】

    第一节.用c编写mex程序[开篇] 用C编写mex程序 大家都知道,matlab是一种解释型的编程环境,也就是说,跟以前的basic一样,是读 一句执行一句的.这样做可以很方便的实现编程过程中的交互, ...

  10. matlab建立mex,Visual Studio创建Matlab mex(dll)函数

    7). 然后打开project -> test_matlab_3 properties -> C++ -> Code Generation -> Runtime Library ...

最新文章

  1. 什么是RSS订阅 Really Simple Syndication(聚合)
  2. EMC首席数据治理官:“受托人”是数据湖问责的关键
  3. python手机编译器可以干什么_世界上最好的Python编辑器是什么?
  4. 高考成绩查询2021年莆田市,2021年莆田高考志愿填报系统入口
  5. 错失黄金时期、连年亏损,国美App改名也难“真快乐”
  6. 网络棋牌游戏服务器架构
  7. vue中的$event
  8. php设置上传文件浏览按钮的样式和文字,文件上传按钮的用户自定义样式的实现...
  9. [暗黑破坏神2]PLUGY与HACKMAP共存
  10. 跨交换机实现 VLAN 间路由
  11. android 增加定时开关机
  12. 繁体转简体 java_在java中,怎么把繁体字转化为简体字
  13. sd卡与FAT32文件系统
  14. 计算机英语中paste表示,计算机英语常用词汇
  15. USB Still Image Capture设备类
  16. Orange Business Services 携手 Riverbed 将 SD-WAN 引入混合网络
  17. 自动化成本高?那么如何获得最高的投资回报呢?
  18. python定义公民类、变量有身份证号_Python趣解身份证号码的奥秘!
  19. 叶小天的功课忙了许多
  20. 文件 md5去重 linux,对比文件md5值实现去重文件

热门文章

  1. java机器学习库_6大最常用的Java机器学习库一览
  2. 不知道什么时候开始,35 岁突然成了 IT 人职业生涯的终结年龄
  3. 如何用计算机看网络电视,教您如何使用海信电视观看局域网中计算机共享的视频...
  4. 百度AI使用方案:黑白图片上色
  5. 软件工程与计算II-9-软件体系结构基础
  6. /.bash_profile 到底在哪里 (Macbook)
  7. 微信小程序云开发---上传图片
  8. 计算机硬件经常使用十六,[单选,A型题] 桂枝在桂枝加桂汤、桂苓五味甘草汤中的主要作用是()...
  9. 装机软件推荐(个人记录)
  10. Ukey证书校验流程和使用注意事项