当前位置: 首页 > news >正文

windows安装mingw

mingw-w64的安装
MinGW全称是Minimalist GNU on Windows,也就是将Linux/Unix环境下赫赫有名的GCC编译器以及其相关的编译调试组件移植到了Windows上。
网页地址 https://www.mingw-w64.org/
github地址 https://github.com/niXman/mingw-builds-binaries/releases
1.访问https://www.mingw-w64.org/,来到工具下载页面
image
点击Downloads,再点击Pre-built Toolchains来到下载页,windows用户选择MinGW-W64-bulids
image
点击后会跳转到如下界面,可以继续点击前往gitHub。
上述从网页访问github,等价于访问地址:
https://github.com/niXman/mingw-builds-binaries/releases
image
版本参数解释

14.2.0
是GCC的版本号;

目标操作系统和API风格

i686
​ 32位的操作系统,选择i686,64位的操作系统,选择x86_64;

posix
这是为类Unix系统(如Linux和macOS)设计的API风格。如果你的程序需要在这些系统上运行,或者你的代码依赖于POSIX API,你应该选择带有posix的工具链。

win32
这是为Windows系统设计的API风格。如果你的程序主要面向Windows用户,或者你的代码依赖于Windows特有的API,你应该选择带有win32的工具链。

异常处理机制
sjlj
表示这个工具链使用“Setjmp/Longjmp”异常处理机制。SJLJ是一种更传统的异常处理方式,它通常用于那些不支持或不完全支持Windows结构化异常处理(SEH)的操作系统。

seh
表示这个工具链使用Windows的结构化异常处理(Structured Exception Handling, SEH)。SEH是Windows平台上常用的异常处理机制,它提供了更丰富的异常信息和更灵活的异常处理逻辑。如果你的代码需要与Windows平台的特性紧密集成,或者你的程序主要运行在Windows上,SEH可能是一个更好的选择。

运行时库

ucrt
是Universal C Runtime的缩写,它是Windows 10及更高版本中包含的一个新运行时库。它提供了与操作系统更紧密集成的API,并通常用于更现代的Windows应用程序。
如果你的目标平台是Windows 10或更高版本,并且你希望利用最新的API和功能,ucrt可能是一个好选择。
msvcrt
是Microsoft C Runtime的缩写,它是Microsoft提供的传统C运行时库。
它提供了广泛的API支持,包括一些旧的、可能不再常用的API。
如果你的代码依赖于msvcrt特有的API,或者你需要确保你的程序能在较旧的Windows版本上运行,msvcrt可能更适合你。

rt_v11
通常指的是“runtime”,即运行时库版本号。

压缩格式

.7z
这是文件的压缩格式。.7z是7-Zip压缩工具使用的文件格式。它表示文件已经被压缩,以减小文件大小,方便下载和存储。要使用文件中的内容,用户通常需要使用7-Zip或其他兼容的压缩工具来解压缩文件。

根据 您的系统选择对应版本,例如本人win10,下载后解压目录如下
image
1.3 环境变量配置
下载并解压完成后,下面是重要的配置环境变量环节,理论上两个Path都可以,用户级别限制单一用户访问,系统级别则是对所有用户开放。
使用 CMake 指定 MinGW 编译器,并配置编译选项:cmake -G "MinGW Makefiles" -DCMAKE_BUILD_TYPE=Release -DNCNN_BUILD_EXAMPLES=ON ..
选项说明:
-G "MinGW Makefiles":指定生成 MinGW 兼容的 Makefile。
-DCMAKE_BUILD_TYPE=Release:编译 release 版本(优化性能)。
-DNCNN_BUILD_EXAMPLES=ON:可选,编译示例程序(方便测试)。
编译源码执行以下命令开始编译(-j 后面的数字表示并行编译的线程数,可根据 CPU 核心数调整)
mingw32-make -j4
编译完成后,会在 build\install\lib 生成库文件,build\install\include 生成头文件。
若需要将 ncnn 安装到系统目录(或指定目录),执行:
mingw32-make install

http://www.jsqmd.com/news/41991/

相关文章:

  • C# 高级类型 dynamic,list,泛型(学习笔记5)
  • filebeat + logstash接入OpenStack日志
  • 构建AI智能体:六十九、Bootstrap采样在大模型评估中的应用:从置信区间到模型稳定性 - 指南
  • pip安装或查看工具包时显示WARNING: Ignoring invalid distribution -XX的解决办法
  • 11 月 13 日
  • 详细介绍:用Flux.1-Krea[dev]打造动漫风格插画的提示词灵感与创作技巧
  • 11 月 14 日
  • 2025-11-13~15 hetao1733837的刷题记录
  • 20251114周五日记
  • 11 月 12 日
  • Lombok踩了无数次的坑
  • 11 月 7 日
  • 详细介绍:LeetCode //C - 893. Groups of Special-Equivalent Strings
  • 11 月 11 日
  • 2025年国内烘干技术厂家排行榜:十大优质供应商深度评测
  • 2025年烘干技术源头厂家推荐排行榜前十名
  • Docmost部署与应用实践
  • [论文笔记] Lifting On-Demand Analysis to Higher-Order Languages
  • 2025年烘干机厂家排行榜前十强推荐:行业精选与选择指南
  • Java 可变参数机制
  • 11 月 3 日
  • 002 vue3-admin项目的目录及文件说明之src目录及其子目录、子文件
  • 全国性搬家公司推荐榜:从运费优势、专业度、靠谱口碑、费用便宜划算等综合实力排名
  • C# 高级类型 Dictionary(学习笔记4)
  • Java 垃圾收集机制
  • Metasploit Framework 6.4.99 (macOS, Linux, Windows) - 开源渗透测试框架
  • 小程序获取OCR识别结果,示例代码
  • 20232405 2024-2025-1 《网络与系统攻防技术》实验五实验报告
  • Invicti v25.11 发布,新增功能简介
  • Acunetix v25.11 发布,新增功能简介