我在Cygwin Bash Shell中运行可执行文件。可执行文件是编译Fortran代码;我在代码的末尾放置了一个Fortran语句PRINT *, "done"
(在最后一行代码END PROGRAM aug3
之前),其中aug3
是我的程序的名称。代码似乎是编译的很好,我得到一个生成的可执行文件, a.exe 。在Cygwin中,如果我在文件夹中使用该命令执行 a.exe :
$ ./a
done
...建议(但不能证明)我的程序已经完成运行,因为Fortran语句PRINT *, "done"
是我的Fortran代码中的倒数第二行,在END PROGRAM aug3
之前。但是,在打印done
之后,Cygwin就坐了 - 我没有得到另一个命令提示符,如果我尝试输入内容,则文本不会出现。大约一分钟后,我收到以下错误消息(之后我终于得到另一个命令提示符):
12 [main] a 592 sig_send:等待sig_complete事件失败,信号6,rc
258,Win32错误0
中止
您知道此错误消息的含义吗?它是否可能引用我的Fortran代码中的问题(在这种情况下我应该在Fortran留言板上问这个问题),还是我的Cygwin Bash可能有问题?当我在互联网上搜索时,posts that I see似乎暗示“等待sig_complete事件失败”证明Cygwin存在问题。
您对我如何诊断和修复错误消息有任何建议吗?
答案 0 :(得分:0)
我很抱歉......我发现了我的错误,我的程序现在正在运行。在我的Fortran代码中,我无意中引用了一个超出范围的数组元素,尽管我从未得到过数组索引超出范围的错误消息。修复这个错误意味着我的程序现在不仅编译得很好,而且运行正常。感谢您的所有时间和耐心。抱歉浪费你的时间“我的坏”。该线程已解决。