3

Mac(OSX Lion)でコマンドラインMonoアプリケーションを実行していますが、次のメッセージが表示されて不思議に死んでしまいます。

[1]    53342 trace trap  "/Library/Frameworks/Mono.framework/Versions/2.10.9/bin/mono" --debug  

read: -p: no coprocess

これは、MonoDevelopからアプリを実行しています。

何が起こっているのか、どうすればこれを修正できるのか、誰かが知っていますか?(またはそれが何であるかを理解する方法)

4

2 に答える 2

1

それを修正する方法も、それが何であるかを理解する方法もありませんが、問題を切り分ける方法:

  • MonoDevelopの外部で実行します。動作する場合は、MonoDevelopにバグを報告してください。
  • 最新バージョンのMono(2.11.3)を使用して、MonoDevelopの外部で実行します。それでも失敗する場合は、Monoにバグを報告してください。
  • (Linuxボックスにアクセスできる場合は、Macプラットフォームにのみ影響するMonoのバグである可能性があるため、そこでも試してください。)

バグはhttp://bugzilla.xamarin.com/に提出されています

于 2012-07-11T21:33:02.523 に答える
0

結局のところ、問題はアプリに次のようなコードがあったことでした。

#if DEBUG
    Debugger.Break();
#endif

アプリケーションはデバッグでコンパイルされていて、私は次のようにアプリを実行していました。

mono Cli.exe

そして、インタープリターがこのコードを見つけたとき、トラップ信号が送信されたときに使用可能なデバッガーはありませんでした。Windowsでは、アプリをデバッグするかどうかを尋ねるダイアログが開きますが、MacOSでは、アプリケーションは自殺します。修正は、Macで実行している場合(またはGDB内でアプリを実行している場合)にこのコードを実行しないことでした。

于 2012-07-12T17:42:08.470 に答える