2009-07-29 8 views
9

私はWindowsからUbuntu Linuxに移行しました。ここで開発環境を設定したいと思います。問題は、私は、Windows PEバイナリを生成し、私はコードを最初に試した時 Eclipse CDTのLinuxボックスでクロスデバッグWindowsアプリケーション

  • ウェイ行うデバッグのWindows PEバイナリ
  • するには、Visual Studioに匹敵し

  • 道を

    1. C/C++ IDEを必要とするということです::ブロック。 Hereクロス開発のための設定ガイドがあるので、「Hello World」をコンパイルしてWineで動かすことができました。さらに、デバッグも機能しました。

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

      私はEclipse CDT内で動作するGDBのMinGW Insightバージョンを取得しようとしています。 Code :: Blocksガイドに記載されているデバッガを使用する簡単な方法はもう使えません。私は "セッションを作成中のエラー"メッセージを引き続き受信します。

      私の質問はEclipseでデバッガのバックエンドとしてWineの下でMinGW GDBを使用する方法です。 または、Linux-> Windowsのクロス開発用に最適なIDEは何ですか?

  • 答えて

    3

    誰もまだこれに答えていないのでしょうか。

    1. QtCreator。その名前で混同しないでください。QtCreatorの作品は、あらゆる種類のC++コードと非常によく似ています。Qtでコーディングする必要はありません。それはFOSS Visual Studioのようなものです。 "on fly"をチェックする構文もあります。

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

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

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

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

      • gdb.exe。私は道を見つけたと確信していた:gdbのWindows版の簡単な使い方は問題を解決するはずです。私はEmacsの人ですから、ネイティブのgdbでデバッグすることは絶対に同じです。しかし、残念なことに、Windowsのgdbはうまく動作しませんでした。私がそれを実行し、コマンドを入力すると、単に何もしません。 Ctrl-cCtrl-zコマンドでのみ反応します。おそらく私は暇な時にメーリングリストに質問をするつもりです。さて、今私たちは、だから我々は、デバッグで何をしている...

    を使用することはできませんか?ほとんどの場合、WINEで動作する別のWindowsデバッガを探します。私が正しくリコールすれば、OllyDbgは機能しましたが、現時点でソースコードを表示する方法はわかりません。

    +0

    +1 for QtCreator。これはGCCツールチェーンでうまく動作します。 – yasouser

    +0

    私はまだポストを更新せず、コメントに情報を残しておきます:ワインで 'gdb.exe'を実行して正しく動作させる方法を見つけました。' wineconsole --backend = curses gdb.exe' 。 –

    +0

    ちょうどemacsの 'gdb.exe'を試してみましたが、それはちょうど使用できません:( –

    0

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

    -2

    VMをWindowsで実行しますか?

    本当にあなたの質問は良いですが、おそらく答えを理解する時間を費やす価値はありません(特に:誰も回答が得られていないようです)。実際の作業があれば、VM内のネイティブWindowsやWindowsが答えです。

    +0

    私はVMでWindowsを稼働させていますが、これはまったく良いことではありません。私のPCは2GbのRAMしか持っていないので、一度見つけたら時間を費やす価値があると確信しています。いつでもどこでも使えます。 –

    関連する問題