开源不乏神人,于是有了MinGW(Minimalist GNU for Windows),又称mingw32,是将GCC编译器和GNU Binutils一直到Win32平台下,包含一系列头文件、库和可执行文件。另有mingw64,可产生64位Windows可执行文件的GNU交叉编译器。然后很多开发者不习惯Windows下的开发环境,还是坚持Linux,就有了Linux平台的交叉编译器,MinGW-w64。
x86_64-w64-mingw32-XXX
i686-w64-mingw32-XXX
下面以Fedora为例简单介绍下
安装交叉编译器
mingw32-gcc.x86_64 : MinGW Windows cross-compiler (GCC) for C for the win32 target
# yum install mingw32-gcc
当然可以安装对应的运行目标平台为64位的交叉编译器
东西放在/usr/i686-w64-mingw32/
/usr/lib64/ccache/里面有一堆软连接指向/usr/bin/ccache,这个玩意类似busybox
然后随便写个hello world程序test.c
$ i686-w64-mingw32-gcc test.c
$ file a.exe
a.exe: PE32 executable (console) Intel 80386, for MS Windows
#include <stdio.h>
int main()
{
int i;
printf("hello world!\n");
scanf("%d", &i);
return 0;
}
然后拿到Windows下运行试试,双击即可。