cygwin是否允许静态编译的二进制文件?这样可以防止cygwin1.dll出现在目标机器的PATH上。
答案 0 :(得分:18)
不,目前无法静态链接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
答案 1 :(得分:13)
Cygwin的GCC不再支持-mno-cygwin
。
尝试使用mingw-gcc,例如x86_64-w64-mingw32-gcc
,如Cygwin FAQ中所述。
答案 2 :(得分:1)
对于安装了mingw32的Cygwin,您的命令行将采用
格式x86_64-w64-mingw32-gcc.exe main.c -o main.exe
这完全绕过了对cygwin1.dll的需求。