ubuntu下交叉编译windows c程序

时间:2022-07-02 05:55:19

采用mingw32可以在linux下直接编译c程序输出为windows下的exe程序或dll链接库。

个人编译的纯c程序(不含winapi),主要是c99程序,通常采用gcc/cc编译调试后,再用mingw输出win目标文件。

linux下目标程序及共享库与windows下的应用程序及链接库不同。

具体步骤

安装mingw

sudo apt-get install mingw32 mingw32-binutils mingw32-runtime

即使不输入mingw32-binutils和mingw32-runtime也会自动安装

编译

i586-mingw32msvc-gcc hello.c -o hello.exe

个人习惯

alias cl=’i586-mingw32msvc-gcc -std=c99’

cl *.o -mdll -o test.dll

cl hello.c -o hello.exe

mingw命令

C compiler: i586-mingw32msvc-gcc

C++ compiler: i586-mingw32msvc-g++

Linker for dynamic libs: i586-mingw32msvc-g++

Linker for static libs: i586-mingw32msvc-ar

Debugger: i586-mingw32msvc-gdb

ubuntu下交叉编译windows c程序