EclipseのC/C++開発用プラグイン「CDT」を用いて、グラフィカルなC/C++開発環境を実現! 効率的な開発を目指す。
前回は、組み込みソフトウェアの開発にEclipseを利用するメリットおよびEclipseのC/C++開発プラグインの概要を紹介し、Eclipse C/C++開発環境の構築方法について解説しました。
今回はEclipseのC/C++開発用プラグイン「CDT」について、簡単なサンプルアプリケーションを作成しながら解説します。CDTの機能紹介が目的ですので、まずはホスト(Windows)環境をターゲットとした、アプリケーションのコーディング、ビルド、デバッグまでの一連の流れを説明します。CDTとRSEを利用したクロスコンパイル、リモートデバッグについては次回の連載で紹介します。
それでは早速、Eclipseを起動してみましょう!
前回インストールした、Eclipseのインストールディレクトリから、「eclipse.exe」をダブルクリックして起動します。
画面1のように[ワークスペース・ランチャー]が起動するので、適切なワークスペース(ここでは、「C:\eclipse\workspace」)を設定して、[OK]ボタンをクリックします。いきなり“ワークスペース”という聞き慣れない言葉が出てきましたが、ワークスペースについての説明は後ほど行います。
しばらくすると、画面2が表示されます。本画面がEclipseのスタート画面になります。[ようこそ]タブの横にある[×]ボタンをクリックして、「ようこそ」画面を閉じます。
Eclipseを利用することで、“ワークベンチ”と呼ばれるグラフィカルなウィンドウを用いて開発を行うことが可能になります。Eclipseのワークベンチのイメージは以下のとおりです(画面3)。
Eclipseワークベンチは、いくつかの構成要素で構成されます。まずはこの構成要素について説明します。
前回の内容を参考にEclipse環境を設定すると、表1のようなメニューが表示されます。
名前 | 説明 | |
---|---|---|
ファイル | ファイル形式で保存されるデータを扱うためのメニューです | |
編集 | エディタを使用するときに利用するメニューです。一般的な「コピー」や「貼り付け」などのアクションが含まれます | |
リファクタリング | リファクタリング用のメニューです | |
ナビゲート | ワークベンチ内のファイルの特定の場所をエディタへ表示するためのメニューです | |
検索 | ワークベンチ内の文字列やファイルなどを検索するためのメニューです | |
プロジェクト | ワークベンチ内のプロジェクトを開いたり、ビルドしたりするためのメニューです | |
実行 | ビルドによって生成されたプログラムを実行したり、デバッグしたりするためのメニューです | |
ウィンドウ | 各種の設定を変更するためのメニューです。特に[ウィンドウ]−[設定]はEclipseワークスペースの設定を変更するために頻繁に使用されます | |
ヘルプ | Eclipseに関するドキュメントを表示するためのメニューです。オンラインマニュアルを読むには、[ヘルプ]−[ヘルプ目次]を選択してください | |
表1 Eclipseのメニュー |
Eclipse初回起動時には、デフォルトでリソース パースペクティブと呼ばれるファイル参照用のパースペクティブが表示されます。
それでは、パースペクティブをC/C++開発用に切り替えてみましょう。
パースペクティブを切り替えるには、メニューの[ウィンドウ]−[パースペクティブを開く]−[その他]を選択して表示される、パースペクティブの一覧から利用したいパースペクティブを選択します。
ここでは、「C/C++」を選択して、[OK]ボタンをクリックします(画面4)。
いかがでしょうか。Eclipseの画面が、C/C++ パースペクティブに切り替わったことを確認できたと思います。次に、本連載で利用する「C/C++ パースペクティブ」、「デバッグ パースペクティブ」について簡単に紹介します。
C/C++開発用のパースペクティブです。C/C++用エディタやコンパイルエラー表示用のビューが定義されています(画面5)。
C/C++デバッグ用のパースペクティブです。デバッグ実行制御や変数などのウオッチ用のビューが定義されています。ビューの詳細な機能については、デバッグ機能の紹介の際に説明します(画面6)。
Eclipseワークベンチの説明は以上になります。以降では簡単なサンプルアプリケーションを使ったCDTの開発方法について説明します。
Eclipse CDTを利用したC/C++アプリケーションの開発の流れは図1のようになります。
Copyright © ITmedia, Inc. All Rights Reserved.