25

cygwin 是否允许静态编译的二进制文件?这将防止 cygwin1.dll 出现在目标机器的 PATH 上。

4

3 回答 3

19

不,目前无法静态链接到 cygwin1.dll;如果您的应用程序不使用 unix 仿真(即纯 win32),您可以将 -mno-cygwin 传递给编译器。

另请参阅常见问题解答: http:
//cygwin.com/faq/faq.html#faq.programming.win32-no-cygwin
http://cygwin.com/faq/faq.html#faq.programming.static-linking

于 2008-12-04T14:14:16.207 回答
15

Cygwin 的 GCC 不再支持-mno-cygwin.

尝试改用 mingw-gcc,例如Cygwin FAQx86_64-w64-mingw32-gcc中提到的。

于 2014-12-09T02:56:22.243 回答
2

对于安装了 mingw32 的 Cygwin,您的命令行将采用以下形式

x86_64-w64-mingw32-gcc.exe main.c -o main.exe

这完全绕过了对 cygwin1.dll 的需求。

于 2017-05-19T18:14:26.377 回答