IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> C++知识库 -> MATLAB下配置C和C++编译器(MinGW) -> 正文阅读

[C++知识库]MATLAB下配置C和C++编译器(MinGW)

很多时候需要在Matlab下使用C或C++边写的代码,这时候就需要先用编译器将代码编译成Matlab可以用的mex文件。检测Matlab有没有可以使用的编译器,可以在命令行窗口下,输入mex -setup,如果有的话就会显示出可以用的编译器。

无编译器:
在这里插入图片描述有编译器:
在这里插入图片描述

方法一

(前两步不仅仅适用于MATLAB)

1.安装包下载

方法一:下载Installer在线安装(费时)

方法二:下载离线包(较快)
由于在线安装方式下载较慢,所以可以选择直接下载离线包。

点击此链接:https://sourceforge.net/projects/mingw-w64/files/,进入下图1后将页面往下滑到图2区域,点击所需离线包名称(参照下图),然后就会弹出图3所示对话框,保存下载即可。离线包大约50MB(解压后500MB左右),下载一般只需半个小时,具体视乎网速情况而定。
在这里插入图片描述

在这里插入图片描述在这里插入图片描述
在这里插入图片描述下载完成解压后的界面是这样的:
在这里插入图片描述

2.环境变量配置

如果下载完成后就进入Windows的命令窗口再次键入gcc,仍会是本文第一张图那样的提示。原因就在于还缺少系统环境变量配置这一环节。

右键计算机→属性→高级系统设置→高级→环境变量,然后鼠标双击系统变量中Path,或者选中后点击编辑,在变量值输入框的末尾输入英文分号后将MinGW-w64包目录下bin文件夹的全路径粘贴到后面,bin的后面有无斜杠均可,如下图:
在这里插入图片描述此时再进入Windows的命令窗口键入gcc -v,将是另一番景象~~~
在这里插入图片描述

3.MATLAB下配置C和C++编译器(MinGW)

但是此时Matlab下还是没有可以使用的编译器
在这里插入图片描述
进行环境变量配置,右键计算机选择“属性——高级系统设置——高级——环境变量”,点击“环境变量”;在系统变量下面,选择“新建”;(位置为安装路径bin目录(eg:D:\software\MinGW-w64\bin)
在这里插入图片描述设置完环境变量后,Matlab还是找不到MinGw编译器的,需要在Matlab中运行如下代码:

setenv('MW_MINGW64_LOC','folder')
比如:setenv('MW_MINGW64_LOC','D:\software\MinGW-w64')//目录为bin的上一级目录

此时执行>> mex -setup
会发现Matlab可以找到已经安装的编译器了。
在这里插入图片描述
注意:如果每次重启Matlab后还是没有发现编译器,而且每次都要重新编译,此时就要看看MinGW的安装目录是不是空格,很多人默认安装在C:\Program File\下,结果就运行不了,因为这其中有空格,此时有两种方法可以解决,第一种就是重新安装到没有空格的文件夹里面,当然这得重新安装,比较麻烦;第二种就是,直接在环境变量那里,把Program File改为Progra~1,即可。

方法二

虽然无报错,但是有警告信息:提示编译器版本不支持,所以又进行了下述操作:

1.matlab主页→附加功能→获取附加功能
在这里插入图片描述2.找到MinGW-w64
在这里插入图片描述3.点击右下角安装即可(我这里已安装所以未显示)在这里插入图片描述

问题“MEX文件无效,找不到指定模块”解决

然而,虽然输出mex -setup未报错,但在运行时出现下述错误:MEX文件无效,找不到指定模块
在这里插入图片描述尝试了网上的建议:将“SDK_PATH\bin”添加到PATH环境变量中,以帮助编译器查找需要的.dll文件,例如添加";C:\myo-sdk-win-0.9.0\bin" 到系统变量,然而仍然报错。
解决方案:将dll文件与.cpp .h放在同一文件夹中,.cpp .h和.dll放在不同的文件夹下,在.cpp中使用.h .dll都是使用的相对路径,通过mex test.cpp编译是可以成功的,但是在调用的时候就会出问题。(原因未知)
在这里插入图片描述
在这里插入图片描述

  C++知识库 最新文章
【C++】友元、嵌套类、异常、RTTI、类型转换
通讯录的思路与实现(C语言)
C++PrimerPlus 第七章 函数-C++的编程模块(
Problem C: 算法9-9~9-12:平衡二叉树的基本
MSVC C++ UTF-8编程
C++进阶 多态原理
简单string类c++实现
我的年度总结
【C语言】以深厚地基筑伟岸高楼-基础篇(六
c语言常见错误合集
上一篇文章      下一篇文章      查看所有文章
加:2021-11-25 07:56:38  更:2021-11-25 07:57:49 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 8:38:08-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码