2011-11-14 2 views
2

IDEで記述されていない同僚のプログラムをテストしようとしています。私たちがそれを実行するために行くと、何かがうまくいかず、私たちはそれが何であるか把握しようとしています。Code:でコンパイル::コマンドラインのようなブロック

Code :: Blocks(私たちはubuntuで実行しているように)でコードをコンパイルして実行するので、実行中の内部的なことを見ることができました。

g++ fe_cmd_arg2_new.c -pthread K_drv_21.cc urg_drv_425.cc o_structures.c ri,cc star_cam_374.cpp com_Unit.o 

コードをコンパイルするとコードがコンパイルされますが、Code :: Blocksでコンパイルされている場合はコンパイルされません。コマンドラインでのように、Code :: Blocksでどのようにコンパイルすればよいでしょうか?

+1

正しいコマンドライン命令を投稿してもよろしいですか?そこに 'n個の' program.ccファイルがあるようです。 –

+0

は物事を包括的に保つだけです。それぞれは個別のコードです。 – Tubbstosterone

+0

あなたの*実際の*説明を投稿してください。過大に処理しようとすると、少し複雑になります。一般的なプログラミングは一般的ではありません。Qです。あなたのQは具体的です。 –

答えて

1

あなたはas-inコードブロックをどのようにコンパイルしますか?おそらく、-gを追加してデバッグシンボルを作成し、おそらくコードを最適化するために-O2を追加するだけです。しかし、デバッグしている場合は、最適化スイッチをオフにすることをお勧めします。

しかしあなたがIDEでデバッグすることができない限り、あなたがgdbデバッガを試みることができる:あなたがコンパイルした後、個別にリンクしている場合

  • は(デバッグシンボルで構築するためにあなたのコンパイル行に-gを追加リンク行を含むすべての行)に
  • は、gdbでプログラムを実行

    gdb ./a.out 
    run <command line args> 
    

Unfoうまくいけばgdbはコマンドラインでアプローチが難しいですが、スタックトレースを出力するにはbtを試してください。次にprint <var>などをダンプすることができます。

+0

さて、gdbを試してみましょう。唯一のハングアップは、私たちがすべてのものを使用する方法を理解することに成功したかどうかです。アイデアありがとう! – Tubbstosterone

関連する問題