在 Cygwin Bash Shell 上运行可执行文件时出现错误消息(sig_complete 事件失败)
我正在 Cygwin Bash Shell 中运行可执行文件。可执行文件是编译后的 Fortran 代码;我在代码末尾放置了一条 Fortran 语句 PRINT *, "done"
(就在最后一行代码之前,END PROGRAM aug3
,其中 aug3
是我的程序的名称。代码似乎可以正常编译,并且在 Cygwin 中,如果我执行 a.exe,我会得到一个可执行文件。 > 在文件夹中使用命令:
$ ./a
done
...which表明(但不证明)我的程序已完成运行,因为 Fortran 语句 PRINT *, "done"
是我的 Fortran 代码中的倒数第二行,位于 END PROGRAM 之前但是,在打印完成后,Cygwin 就不动了——我没有收到另一个命令提示符,如果我尝试输入一些内容,大约一分钟后文本就不会出现。 ,我收到以下错误消息(并且之后我终于得到另一个命令提示符):
12 [main] a 592 sig_send: 等待 sig_complete 事件失败,信号 6,rc
258,Win32 错误 0
已中止
您知道此错误消息的含义吗?它是否可能涉及我的 Fortran 代码中的问题(在这种情况下,我应该在 Fortran 留言板上问这个问题),或者可能是我的 Cygwin Bash 的问题?当我在互联网上搜索时,我看到的帖子似乎建议“等待 sig_complete 事件失败”证明 Cygwin 存在问题。
您对如何诊断和修复错误消息有什么建议吗?
I am running an executable in Cygwin Bash Shell. The executable is compiled Fortran code; I have placed a Fortran statement PRINT *, "done"
at the end of my code (just before the final line of code, END PROGRAM aug3
, where aug3
is the name of my program. The code appears to compile fine and I get a resulting executable, a.exe. In Cygwin, if I execute a.exe using the command while in the folder:
$ ./a
done
...which suggests (but does not prove) that my program is finished running, since the Fortran statement PRINT *, "done"
is the second-to-last line in my Fortran code, before END PROGRAM aug3
. But, after printing done
, Cygwin just sits--I do not get another command prompt, and if I try to type something, the text does not appear. After about a minute, I get the following error message (and after that I finally get another command prompt):
12 [main] a 592 sig_send: wait for sig_complete event failed, signal 6, rc
258, Win32 error 0
Aborted
Do you know what this error message means? Does it likely refer to a problem in my Fortran code (in which case I should ask this question on a Fortran message board), or is it likely a problem with my Cygwin Bash? When I search around on the internet, the posts that I see seem to suggest that "wait for sig_complete event failed" evidences a problem with Cygwin.
Do you have any suggestions of how I can diagnose and fix my error message?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
非常抱歉...我发现了我的错误,并且我的程序现在可以运行了。在我的 Fortran 代码中,我无意中引用了越界的数组元素,尽管我从未收到过数组索引越界错误消息。修复这个错误意味着我的程序现在不仅可以正常编译,而且可以正常运行。感谢您的所有时间和耐心。抱歉把你的时间浪费在“我的错”上。该线程已解决。
I'm so sorry... I've found my mistake, and my program is working now. In my Fortran code, I was inadvertently referencing an array element that was out of bounds, although I never got an array index out of bounds error message. Fixing this bug means that my program now not only compiles fine, but also runs fine. Thank you for all your time and for all your patience. Sorry to waste your time on "my bad." This thread is resolved.