9

Windows から Ubuntu Linux に移行したので、ここで開発環境をセットアップしたいと考えています。問題は私が必要だということです

  1. Visual Studio に匹敵する C/C++ IDE
  2. Windows PE バイナリを生成する方法
  3. Windows PE バイナリをデバッグする方法

最初は Code::Blocks を試しました。ここでは、クロス開発用にセットアップするためのガイドを見つけるので、「Hello World」をコンパイルして Wine で実行することができました。さらに、デバッグも機能しました。

しかし、Eclipse + CDT プラグインははるかに高度な IDE であることがわかりました。私はしばらく時間を費やし、最終的にプロジェクトをコンパイルしてリンクしました。

現在、GDB の MinGW Insight バージョンを Eclipse CDT 内で動作させようとしています。Code::Blocks ガイドで説明されているデバッガーを使用する簡単な方法は、もう機能しません。「セッションの作成中にエラーが発生しました」というメッセージが引き続き表示されます。

だから私の質問は、Eclipse のデバッガー バックエンドとして Wine で MinGW GDB を使用するにはどうすればよいですか? または、Linux->Windows クロス開発に最適な IDE は何ですか?

4

3 に答える 3

3

まだ誰もこれに答えていないのではないかと思っています。

  1. Qtクリエイター。その名前に惑わされないでください。QtCreator は、あらゆる種類の C++ コードでうまく機能します。使用するために Qt でコーディングする必要はありません。FOSS Visual Studio と同じように、"オン フライ" で構文チェックを行うことさえできます。

  2. MinGW. ここで言うことはあまりありません。Win PE 実行可能ファイルを作成するだけで、動作します。リポジトリで利用できます。Win GUI アプリケーションには、その PE ヘッダー セットに特別なビットがあることに注意してください。そのため、MinGW で GUI アプリケーションを作成するには、-mwindowsこのビットを設定するオプションを渡す必要があります。

  3. これは問題です。本当に: Windows アプリケーションをデバッグしようとしていますが、まだそれを行う方法が見つかりませんでした。あなたが私のレーキを踏まないようにするために、ここで私がこれまでに試したことを簡単に思い出します。

    • ワインデブ。おそらくうまくいくはずですが、私にとってはうまくいきませんでした。ブレークポイントを設定すると、つまり thisbr 43のように、 と表示されますUnable to add breakpoint (unknown address 7b860807)

    • ワインデブ。ええ、繰り返しますが、今回はこのように使用しwinedbg --gbdて、コマンドを にプロキシしますgdb。おそらくこれがアプリケーションをデバッグする唯一の方法ですが、欠点があります。まず、アプリケーションを再起動するには、デバッガを終了する必要があります。入力runすると、リモート ターゲットがこれをサポートしていないことが示されます。次に、マルチスレッド アプリケーションをデバッグする方法がわかりません。これを最初に開始したとき、エラーに遭遇しNon-stop mode requested, but remote does not support non-stop、ブレークポイントを設定して開始した後、次のように表示されました: Cannot insert breakpoint 1.and Cannot access memory at address 0x401654. したがって、これを機能させるには、.gdbinitファイルの名前を変更する必要がありました(つまり、ノンストップ モードが設定されています)

    • gdb.exe。私は方法を見つけたと確信していましたgdb。さらに、私は Emacs の人間なので、ネイティブ gdb でデバッグするのとまったく同じです。しかし残念ながら、Windows の gdb は機能しませんでした。実行してコマンドを入力しても、何もしません。Ctrl-cとコマンドにのみ反応しCtrl-zます。おそらく、空き時間を利用して、メーリング リストで質問してみようと思います。うーん、今は使えない…

では、デバッグとは何の関係があるのでしょうか? ほとんどの場合、 WINEで動作する別の Windows デバッガーを探します。私の記憶が正しければ、OllyDbg は機能していましたが、ソース コードを表示する方法が今のところわかりません。

于 2014-08-15T06:57:51.410 に答える
0

NetBeansを試すことができます。これは優れた無料のオープン ソースであり、クロス プラットフォームをサポートする IDE です。

于 2012-12-03T11:19:32.507 に答える
-2

VM で Windows を実行しますか?

真剣に、あなたの質問は良いものですが、おそらく答えを見つけるために時間を費やす価値はありません (特に: だれもすぐに答えを持っているように見えないため)。実際に行う作業がある場合は、ネイティブ Windows または VM 内の Windows が答えです。

于 2014-08-15T07:02:01.967 に答える