关于MinGW和MSYS

2023-10-31

MinGW是Minimalist GNU for Windows的缩写,是本地Windows应用的极简开发环境。

MinGW为本地MS-Windows应用的开发提供了完整的开源编程工具集,而且不依赖于第三方C运行时DLL。(它确实依赖于很多由微软提供的DLL,这些DLL是操作系统的一部分。其中最主要的是MSVCRT.DLL,即微软C运行时库。此外,线程应用必须附带一个可自由发布的线程支持DLL,作为MinGW的一部分提供)。

MinGW编译器提供对微软C运行时和一些特定语言运行时的功能的访问。MinGW,作为最简开发环境,现在、将来都不会尝试提供POSIX运行时环境以在MS-Windows上部署POSIX应用。如果你希望在该平台上部署POSIX应用,请考虑使用Cygwin。

主要提供给工作于MS-Windows平台的开发者使用,但也适用于跨主机应用。MinGW包括:

  • GCC的移植,包括C、C++、ADA、Fortran编译器;
  • 用于Windows的GNU Binutils(汇编器、链接器、归档管理器);
  • 一个命令行安装器,附带可选的GUI前端,(mingw-get)用于在MS-Windows上部署MinGW和MSYS;
  • 一个GUI式的首次安装工具(mingw-get-setup);

MSYS,是Minimal SYStem的缩写,是一个Bourne Shell命令行解释器系统。可作为微软cmd.exe的替代选择,提供了通用命令行环境,特别适合用来与MinGW搭配使用以及移植开源应用到MS-Windows平台;它是Cygwin-1.3的一个轻量级分支,包括一小部分的UNIX工具,用于促进这一目标。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

关于MinGW和MSYS 的相关文章

  • mingw 中的套接字编程

    我编写了服务器 客户端 C 代码并在 Visual Studio 中进行了测试 一切正常 但我想转换为 CodeBlocks MinGW Gnu CC Compiler 并且它返回一些错误 例如 warning 忽略 pragma 注释 W
  • C++ 32 位与 64 位浮动限制

    鉴于代码段如下 我只想知道 为什么64位的long double的最大值比32位的要小 为什么 64 位版本无法扩展与 32 位版本一样多的位数来填充 40 精度输出 LDBL MIN 和 LDBL MAX 的值似乎相等 这是一个错误吗 我
  • MinGW:使用 __declspec(dllexport) 还是 __attribute__((visibility("default")))?

    MinGW支持吗 declspec dllexport declspec dllimport 即使是这样 我应该使用 attribute visibility default 基本上我应该根据平台或编译器来决定使用什么 应该是这样吗 ifd
  • 如何更新到 mingw-gcc 4.8.2?

    我想在 c 11 中使用正则表达式 gcc 4 8 2 支持它 但 MinGW 安装程序最高仅支持 gcc 4 8 1 如何将其更新到 gcc 4 8 2 您可以自己手动安装 有一个 MinGW w64 发行版4 8 2 可在此处获取 ht
  • 如何解决 mingw32-make.exe 退出并出现代码 2 错误?

    我已经安装了Qt Open source 4 8 3适用于 Windows 的库Windows 8 Pro x64 Qt Creator 2 6 0 and MingW 4 4 0手动 我从 Qt Creator 设置了套件和编译器 我打开
  • 如何使用 MinGW 运行 ./configure?

    我正在看这个网页 http mathieu carbou free fr wiki index php title Glib for Win32 http mathieu carbou free fr wiki index php titl
  • MinGW 调试模式下 Qt 应用程序启动缓慢

    我在 Win 7 上使用 Qt Creator 3 1 1 和 Qt 5 3 如果设置了 2 个套件 VC2013 和 MinGW 4 8 1 我的应用程序可以编译 并且可以与两个编译器一起使用 但是当我以 MinGW gdb 调试模式启动
  • 用g++编译简单的SDL程序时找不到-lSDLmain和-lSDL

    我使用 mingw 安装了 SDL2this http lazyfoo net SDL tutorials lesson01 windows mingw index php指导 但是 当我尝试使用他们提供的编译语法和测试代码进行编译时 仅使
  • 使用 MinGW 在 Windows 上编译小型 Gcc 项目

    所以我用 C 编程已经快两年了 一直以来我很高兴使用具有可爱的项目设置和自动链接等功能的 IDE VS 我总是远离任何需要我通过 makefile 进行编译的外部库 或者至少是那些适用于 Linux 环境 其他编译器的库 无论如何 我现在想
  • OpenGL + Mesa 3D + MinGW

    我在 Ubuntu Linux 上编写 C 应用程序并将它们编译到 2 个操作系统 本机到Linux通过使用 g GNU C 编译器 并将它们交叉编译为Windows通过使用 i386 mingw32 g MinGW C 交叉编译器 现在
  • CMake 无法静态链接 SDL2

    我正在尝试使用 CMake 和 MSYS Makefile 构建一个简单的 SDL2 游戏 我想静态链接 SDL2 这样我就可以分发单个可执行文件 而不必包含 SDL2 dll 这是我的CMakeLists txt file project
  • libtool:i686-pc-mingw32 共享中不允许未定义的符号

    我正在使用自动工具作为我的库的构建系统 最近库被移植到Windows 尽管我遇到了一个奇怪的错误 但库编译和链接成功 配置和make后只有静态库 除了警告之外 一切看起来都很好libtool libtool undefined symbol
  • 在 Windows 中执行全屏抓取

    我正在研究一个想法 涉及全面捕获屏幕 包括窗口和应用程序 对其进行分析 然后将项目作为叠加层绘制回屏幕上 我想学习图像处理技术 如果我可以直接访问 Windows 屏幕 我可以获得大量的数据来处理 我可以用它来构建以前从未见过的自动化工具
  • 这些 g++“多重定义”错误是怎么回事?

    我正处于一个项目的早期阶段 请阅读 昨天刚刚开始 我正在设置我的初始 makefile 这非常简单 以下是该文件的完整内容 all main o resource o g o output exe main o resource o mai
  • 我需要帮助尝试使用 MinGW 编译 GLFW 的简单示例

    我正在尝试从 GLFW 的文档中编译一个示例 我的库和源文件的文件夹结构是 C cpp glfw3 dll glfw3dll a libglfw3 a test cpp include GLFW glfw3 h glfw3native h
  • 如何在 Windows 10 x64 上使用 Bazel 构建和调试 C++ 可执行文件

    我想使用 bazel 生成的可执行文件来调试 C 代码 但由于某种原因 bazel 不会在 x64 架构上构建代码 或者可执行文件无法在调试模式下工作 我的文件是 main cpp include
  • 如何在 Windows 上通过 Vim 使用 MinGW make

    我已经在我的机器上安装了 Vim 和 MinGW 所以我尝试创建 Hello World 然后在 Vim 中编译 一切正常 但是当我输入时 make它显示错误 make not recognized as an internal or ex
  • 在 Solaris 上,使用 gcc 编译的库与使用 cc 生成的库的使用方式是否相同?

    我目前正在尝试编译 libxml2在 Solaris 上 当我运行源代码提供的 configure 脚本时 会自动使用 gcc 和 g 编译器 但是 我想使用 cc 和 CC 编译器 所以我跑 configure CC cc CXX CC
  • 无法使用 MinGW C++ 在 NetBeans IDE 7.3 中编译“Hello World”

    我正在尝试制作一个简单的 Hello World 在 NetBeans IDE 7 3 中使用 MinGW 作为我的 C 编译器来编写程序 我遇到了构建失败的情况 但我不知道为什么 这是我的编译器设置 Family MinGW 基本目录 C
  • Qt + win32 + mingw 上的原生 Windows API 链接问题

    我正在尝试使用 mingw 工具集将本机 Windows API 与 Qt 结合使用 部分功能存在链接问题 会发生什么 这是 mingw 名称修改的错误吗 ifdef Q WS WIN HWND hwnd QWidget winId HDC

随机推荐