百度
360搜索
搜狗搜索

linux上mingw编译命令详细介绍

在 Linux 上使用 MinGW-w64(支持 32/64 位 Windows 程序编译的工具链)进行交叉编译,步骤和常用命令如下:

一、安装 MinGW-w64

1. Debian/Ubuntu 系列

bash

  update

mingw-w64

2. Fedora 系列

bash

 dnf  mingw-w64

二、编译命令语法

根据目标架构(32 位或 64 位),编译命令前缀不同:

  • 64 位 Windows 程序:前缀为 x86_64-w64-mingw32-
  • 32 位 Windows 程序:前缀为 i686-w64-mingw32-

常用命令格式:
bash

前缀gcc 编译选项 源文件  输出文件名.exe

三、常用编译示例

1. 编译 C 程序(64 位)

bash

x86_64-w64-mingw32-gcc hello.c  hello64.exe

2. 编译 C 程序(32 位)

bash

i686-w64-mingw32-gcc hello.c  hello32.exe

3. 编译 C++ 程序

bash

x86_64-w64-mingw32-g++ main.cpp  main64.exe

4. 链接静态库(如 Windows 系统库)

bash

x86_64-w64-mingw32-gcc source.c    program.exe

5. 生成图形界面程序(跳过控制台窗口)

bash

x86_64-w64-mingw32-gcc source.c   gui_app.exe

四、关键选项说明

选项 说明
-m32 / -m64 显式指定 32 位或 64 位目标(部分场景需配合前缀使用)
-static 静态链接所有库(生成独立 exe,但文件体积较大)
-D__MINGW32__ 定义宏以兼容 Windows 特定代码
-I<路径> 指定头文件路径(如 Windows SDK 头文件)
-L<路径> 指定库文件路径

五、验证输出文件

编译完成后,生成的 .exe 文件可通过 Wine(Linux 上的 Windows 兼容层)测试运行:
bash

wine hello64.exe




912wine hello64.exe

通过上述命令,即可在 Linux 环境下生成可在 Windows 系统运行的二进制程序。注意根据目标平台选择正确的前缀和编译选项,确保依赖库正确链接。

阅读更多 >>>  linux怎么编译stm32
← 上一篇: 下一篇:

网站数据信息

"linux上mingw编译命令"浏览人数已经达到18次,如你需要查询该站的相关权重信息,可以点击进入"Chinaz数据" 查询。更多网站价值评估因素如:linux上mingw编译命令的访问速度、搜索引擎收录以及索引量、用户体验等。 要评估一个站的价值,最主要还是需要根据您自身的需求,如网站IP、PV、跳出率等!