Cygwin编译错误:“这个应用程序已经请求运行时以不寻常的方式终止它”

我试图运行Cygwin,而我遇到了一些问题。 我尝试编译一个在mingw和Unix系统上都能在Windows上运行的程序,但是当我通过Cygwin去编译它时:

gcc threads.c -o threads 

我得到错误: 这个应用程序已经请求运行时以不寻常的方式终止它

这就是…任何想法,我忘了或搞砸了? 大约5年后我没有碰过这个东西,所以我已经生锈了。 谢谢!

错误消息意味着编译器在尝试构建程序时崩溃。

这很可能意味着你的Cygwin安装已经损坏,或者碰巧包含了一个破碎版本的gcc。 尝试更新到当前版本的Cygwin。 Cygwin 1.7和GCC 4的第一个稳定版本都是最近发生的事情,这是双倍的情况。 如果你仍然使用Cygwin 1.5或者GCC 3.x,我认为升级将会很好的解决你的症状。

在我的情况下,这个问题是由于我没有一个在cygwin中定义的TEMP环境变量,请尝试:

 export TEMP=/tmp 

如果TEMP已经定义,请确保该目录不是只读的。

假设你正在编译threads.c,我将收集这些线程与线程有关,你试过这个…

 gcc -L libthreads -o线程threads.c

这是告诉gcc编译器包含库线程并将其链接在一起。

或者…如果你不需要类似unix的行为,你可以在上面的命令行中加入这个开关-mno-cygwin

希望这有助于,最好的问候,汤姆。