编译用于Windows的Linux应用程序(C)

我可以编译一个Linux应用程序,只有Linux可用的库,Windows

我知道nginx web服务器的作者使用一些Wine工具来让他的基于Linux的项目在win32上工作,但是他怎么做呢?

MinGW支持创build与Linux特定库/头文件链接的Windows二进制文件吗?

PS:我不想使用cygwin由于失去了大量的performance…

使用诸如mingw32环境之类的东西,你将不得不寻找或者建立你自己想要构建的项目所依赖的所有库(以及这些库所依赖的所有库)。

您可能最终需要实现该平台上缺少的一些功能。 cygwin慢的原因之一是它必须跳过来模拟windows上缺少unix-y的东西。

只要项目使用Linux上的标准库,而不依赖Linux平台的特定任何东西,GCC的Mingw端口就可以在Windows上进行编译。

如果您熟悉Linux工具并且不需要Cygwin,则可以查看MSYS :

MSYS是GNU实用程序(如bash,make,gawk和grep)的集合,允许构建依赖于传统UNIX工具的应用程序和程序。 它旨在补充MinGW和cmd shell的缺陷。