我刚刚从cygwin安装了g ++,当我尝试编译C ++文件时,我没有得到编译器生成的任何可执行文件,请参阅下面的示例。出了什么问题?
Directory of C:\helloworld 01/02/2011 04:50 PM . 01/02/2011 04:50 PM .. 01/02/2011 04:48 PM 94 helloworld.cpp 1 File(s) 94 bytes 2 Dir(s) 24,658,272,256 bytes free C:\helloworld>g++-4 helloworld.cpp C:\helloworld>dir Volume in drive C is OS Volume Serial Number is C47B-942D Directory of C:\helloworld 01/02/2011 04:50 PM . 01/02/2011 04:50 PM .. 01/02/2011 04:48 PM 94 helloworld.cpp 1 File(s) 94 bytes 2 Dir(s) 24,657,747,968 bytes free C:\helloworld>
答案 0 :(得分:5)
对于那些最终在这里使用g ++产生无输出的人。
我通过在cygwin终端窗口中运行cygcheck -s
解决了这个问题。这会检查(以及其他)cygwin1.dll的多个实例。在我的情况下,WinAVR导致了问题,uinstalling做了诀窍
此链接也有助于让Cygwin正常运行:http://thehacklist.blogspot.nl/2009/04/cygwin-ls-command-not-found.html
答案 1 :(得分:1)
问题似乎是(从你的C:\提示判断)你没有运行Cygwin。尝试双击Cygwin图标。
答案 2 :(得分:0)
您应该能够从DOS提示符运行任何Cygwin程序,因为Cygwin不是像Linux这样的操作系统,它主要是一个特殊的DLL,它编程链接+工具。但是,在这种情况下,我怀疑路径问题阻止了g ++的运行,无论是g ++本身的路径还是g ++需要的某些库。 Cygwin应用程序在不运行时提供任何信息都是非常糟糕的,解决方案是通过strace运行它们。
C:\ cygwin的\ BIN> strace g ++
然后任何问题都会显示在Windows对话框中。