なたで日記

いろいろな思ったこと書きますヽ(^▽^ゞ)

Linuxで動作するCプログラムのデバッグ環境構築2

time 2018/02/27

Linuxで動作するCプログラムのデバッグ環境構築2

前回のつづきから

前回の「Linuxで動作するCプログラムのデバッグ環境構築1」から引き続きます。
今回は、Eclipseを使って、Cのプロジェクトを作ってコンパイルしてみるところまで行ってみたいと思います。

では、さっそく解説をはじめます。
今回は図をふんだんに使って分かりやすく説明します!

プロジェクトを作成しよう

1

Eclipseを開きましたら、左のプロジェクトの部分で右クリックをしましょう。
新規からプロジェクトを追加していきます。

2

今回プロジェクト名は「Sample」と名付けます。
これがプロジェクトエクスプローラに表示されるタイトルになります。
また勉強のために、空のプロジェクトを選択します。
ツールチェーンは、このLinux環境で実行したいのでLinux GCCを選びます。

最後に「完了(F)」ではなく「次へ(N) >」を選んでください。

3

構成を選択できます。
構成というのは、どのようにコンパイルするかといった設定です。
デフォルトでDebugとReleaseがあります。
それぞれデバッグ向き、リリース向きとなっています。
今回勉強のために後で再設定を行う予定ですが、一旦「Debug」にのみチェックをうちましょう。
必ず1つは設定を持つ必要があるため、チェックを打たないという選択肢はありません。
ここで、「完了(F)」を押して、ウィザードを終わらせます。

 

ソースコードを準備しよう

1

今回は、例として下記のようなファイル構成にします。
プロジェクト・エクスプローラ内で右クリックでファイルやフォルダを作成していきましょう。
次のようなフォルダ構成にしてみました。

2

main.c は、オーソドックスに次のようにしました。

#include <stdio.h>

int main(void) {
	printf("Hello world !\n");
	return 0;
}

3

makeファイルも、オーソドックスに次のようにしました。
注意点として、この後デバッグをするために
コンパイルオプションとして「-g」と「-O0」が必ず必要となります。
また、実行ファイル名を「Hello」としました。
設定でデフォルト値に「all」と「clean」が存在しており、これらのコマンドが使用されます。
従って、「all」「clean」が使えるようにしておきましょう。

Target  = main.c
ExeName = Hello

all : $(ExeName)

$(ExeName) : $(Target)
	gcc -g -O0 -Wall -o $(ExeName) $(Target)

clean :
	rm -f $(ExeName)

プロジェクトの設定をしよう

1

先ほどはウィザードで初期設定を行いましたが、ここで改めて設定を構築しなおしていきます。
ファイルメニューから「プロパティ(R)」を選択します。

2

「C/C++ ビルド」で設定が行えます。
最初にウィザードで、構成の「Debug」にチェック入れました。
つまり、この最初に表示されたのが、「Debug」の初期構成となっています。
今回勉強のために、構成の名前を変えてみましょう。「構成の管理…」を押します。

3

Debugを選択して、「名前変更…」で「MyCompile」と変更して「OK」を押してみます。
これで自分で名前をつけた構成となります。

4

EclipseではMakefileを自動生成する機能がありデフォルトで有効となっていますが、
今回は自分でMakefileを管理するため「自動的にMakefileを作成(G)」のチェックを外します。
また、「ビルド・ディレクトリー(D)」でMakefileがおいてあるディレクトリを設定します。
設定が終わったら、「適用(A)」を押しましょう。

5

今度はコンパイルが終わって実行ファイルが作成された後の実行方法の設定を行います。
「実行/デバッグ設定」で、「新規(N)…」を選択します。

6

実行する手法に名前をつけられるので、「MyExecute」としました。
今回、makefileにコンパイル後の実行ファイル名は「Hello」と記載しました。
従って、makefileが実行されると「MyProcess/Hello」という実行ファイルが作成されます。
ここには、その実行ファイルのパスを「C/C++ アプリケーション」に記述します。
ここに記載されたパスが、実行ボタンを押すと実行されるようになるためです。
プロジェクトの欄は、この起動構成プロパティは、何のプロジェクトの起動構成プロパティかという設定です。
今回は、Sampleプロジェクトなので「Sample」とします。
設定を終えたら「OK」を押します。

7

これで設定の完了したので「OK」を押します。

コンパイルをしよう

1

「プロジェクト(P)」メニューの「プロジェクトのビルド(B)」を選びましょう。

2

下のコンソールに「Build Finished」が表示されたら成功です。
左側のプロジェクトエクスプローラーにも、実行ファイルが作成されていることが確認できます。

 

実行とデバッグをしよう

1

緑色の▲ボタンを押すと、実行できます。簡単でしょ!
コンソールにはしっかり「Hello world !」と表示されます。

2

虫(bug)のマークを押すとデバッグが行えます。

デバッグを中止したいときは、■を押して停止させます。
元のウィンドウ構成に戻すためには「ウィンドウ(W)」の
「パースペクティブを開く(O)」から「C/C++」を選択します。
Eclipseでは、ウィンドウやコントロールの位置などのプリセットをパースペクティブと呼びます。
この操作を行うことで、デバッグ用のパースペクティブから元に戻すことが可能です。

おまけ

1

今回は、変更しませんでしたが「振る舞い」でMakefileの引数も設定できます。
デフォルトは先ほど説明したように、「all」と「clean」になっています。

2

もし、ソースコード内でincludeするときに、別のライブラリのヘッダを参照している場合は、
下記のインクルード設定で設定を行えます。
ただし、今回のようにMakefileを手動設定にしている時点で、
ここの設定が誤っていてもコンパイルと実行は可能です。
ただ設定が誤っていると、ソースコードエディタで注意がされてしまいます。

おわりに

おつかれさまです。
いろいろEclipseをいじりながら無事を書き終わることができました。

では、また!

コメントを残す




プロフィール

なたで

なたで

明るくて楽しいことが好きです!モノづくりや旅が趣味です!

RSS フィード RSS feed GitHub GitHub Twitter Twitter YouTube YouTube



sponsored link

タイムライン