2011-08-09 12 views
23

Eclipse IndigoでC++プログラムをデバッグしようとしています。このプロジェクトはビルドシステムとしてautotools/configure(およびそれぞれのプラグイン)を使用しています。Eclipseの「プログラムは認識された実行可能ファイルではありません」エラー

ビルドが成功した後、私はプロジェクトブラウザでバイナリを右クリックし、 "Debug As"を選択しました。次に、ファイルブラウザを使用してバイナリを選択しました。 "デバッグ"をクリックすると、 "プログラムは認識された実行可能ファイルではありません"というダイアログが表示されます。

アイデア?

答えて

35

私は答えを見つけた:日食に構成されたバイナリパーサは間違っていたものでした。プロジェクト - >プロパティ - > C/C++ビルド - >設定の下に正しいバイナリパーサーを追加すると、彼の問題は解決されます。

+1

バイナリパーサは何ですか?私は同じ問題です;) –

+9

解決してください! Elfパーサーのチェックを外し、Mach-O 64パーサーをチェックしてデバッグします。ありがとう! –

+1

同じ問題が出ていますが、Elfのチェックを外してMach-O 64をチェックしても問題は解決しません。ウィンドウ上の –

3

プロジェクトでlibtoolを使用している場合は、バイナリどのように見えるか、実際に(.libsディレクトリに格納されている)、実際のバイナリを実行する前に、そのようなLD_LIBRARY_PATHとかを設定するために使用するラッパースクリプトかもしれません。これは、Eclipseが失敗する原因になるかもしれませんが、私はあなたがそれを修正するためにいかにすべきかについてはわかりません。

そこには、あなたがが必要に関する情報を有していてもよく、インターネット上のEclipse CDTとlibtoolに関するドキュメントのビットのように見える:http://www.freerdp.com/wiki/doku.php?id=eclipse#debug_configuration

+1

答えてくれてありがとう、しかし、libtoolは関与しません。このファイルは実行可能ファイル(Mach-O実行可能ファイルi386、Mac OS Xではgcc 4.6.1を使用しています)です。 – Andreas

+1

freerdbのリンクが無効です。 –

+0

同じ問題があり、バイナリパーサーを設定しても解決されませんでした。私が実行可能ファイルとして考えたのは、まさにlibtoolを使ったラッパースクリプトでした。おそらく上記の原因が正しいでしょう。私はそれを修正する方法を理解しようとしています。私は手動でgdbをexeファイルで実行しようとしたときにこれを確認しました – fayyazkl

0

OSX Snow Leopardをオンにすると、gccはデフォルトで64ビットの実行可能ファイルをビルドするようです。そして、それらはEclipseから認識されません。このエラーを解決するには、アーキテクチャーをi386に明示的に設定する必要があります。

プロジェクトのプロパティを入力し、C++リンカ、C++コンパイラ、およびCコンパイラごとにコマンドラインオプション "-arch i386"を追加します。きれいなビルドの後、再度デバッグするのは明確です。リンカオプションでは、-Xlinkerオプションとして設定しないでください。

Original Source

関連する問題