Skip to content

Archives

  • 2022年1月
  • 2021年12月
  • 2021年11月
  • 2021年10月
  • 2021年9月

Categories

  • カテゴリーなし
Trend RepositoryArticles and guides
Articles

Eclipse 4.3 (Kepler) for C/C++ Programming

On 11月 9, 2021 by admin

Eclipse はIBMがサポートしているオープンソースの統合開発環境(IDE)です。 マザーサイトは @ www.eclipse.org です。 Eclipseは、Javaプロジェクト開発で人気があります。 また、拡張可能なプラグインによって、C/C++、PHP、Python、Perl、およびその他のWebプロジェクト開発もサポートしています。 Eclipse はクロスプラットフォームで、Windows、Linux、および Mac OS で動作します。

  • How to Install Eclipse C/C++ Development Tool (CDT) 8.1.2 for Eclipse 4.2.2 (Juno)
  • Writing your First C/C++ Program in Eclipse
  • C++ Program
  • C Program
  • C++ Program with Makefile
  • ドキュメントを読む
  • Debugging C/C++ Programs in Eclipse CDT
  • Tips & Tricks
  • GCC による C/C++ ソフトウェア開発
  • Eclipse におけるファイル I/O

How to Install Eclipse C/C++ Development Tool (CDT) 8.1.2 for Eclipse 4.2.2 (Juno)

ステップ 0: MinGW GCC または Cygwin GCC のインストール

C/C++ プログラミングに Eclipse を使用するには C/C++ コンパイラーが必要です。 Windows では、MinGW GCC または Cygwin GCC のいずれかをインストールすることができます。 MinGW の方が軽量でインストールが簡単ですが、機能が少ないので、よくわからない場合は MinGW を選択してください。 MinGW のインストール方法” を読んでください。

  • Cygwin GCC: Cygwinのインストール方法 “をご覧ください。 Devel” の下にある “gcc“, “g++“, “gdb“, “make” パッケージが選択されていることを確認すること。 (開発)カテゴリ – これらのパッケージはデフォルトのインストールの一部ではありません。
  • Step 1: Eclipse C/C++ Development Tool (CDT) をインストールする

    CDT をインストールする方法は、以前に Eclipse をインストールしたかどうかにより 2 通りあります。

    1. すでに「Eclipse for Java Developers」またはその他の Eclipse パッケージをインストールしている場合、次のように CDT プラグインをインストールできます:
      Launch Eclipse ⇒ Help ⇒ Install New Software ⇒ “Work with” フィールドで、ドロップダウン・メニューを引き出して “Kepler – http://download.eclipse.org/releases/kepler” を選択してください。 (Eclipse 4.2 では juno、Eclipse 3.7 では helios).
      “Name” ボックスで “Programming Language” ノードを展開 ⇒ “C/C++ Development Tools” にチェック ⇒ “Next” ⇒ …と進みます。
    2. Eclipse パッケージをインストールしていない場合は、http://www.eclipse.org/downloadsから “Eclipse IDE for C/C++ Developers” をダウンロードし、任意のディレクトリに解凍します。
    ステップ2:設定

    環境変数 PATH に Cygwin または MinGW バイナリが入っていれば、設定は一切必要ありません。 CDT は PATH を検索して C/C++ コンパイラーを見つけます。

    Writing your First C/C++ Program in Eclipse

    C++ Program

    Step 0: Launch Eclipse
    1. Eclipse インストール先で “eclipse.exe” を実行して Eclipse を開始します。
    2. 「ようこそ」画面が表示されたら、「閉じる」ボタンをクリックし、画面を閉じます。
    ステップ1:新しいC++プロジェクトを作成する

    C++アプリケーションごとに、すべてのソースコード、オブジェクトファイル、実行ファイル、および関連リソースを保存するためのプロジェクトを作成する必要があります。 ⇒ C/C++ ⇒ C++プロジェクト.

  • 「C++プロジェクト」ダイアログがポップアップします。
    1. 「プロジェクト名」フィールドに、「FirstProject」と入力します。
    2. 「プロジェクトの種類」ボックスで、「実行可能」 ⇒ 「空のプロジェクト」.
    3. 「ツールチェーン」ボックスで、例えば、お使いのコンプラを選択します。 “Cygwin GCC” or “MinGW GCC” ⇒Next.
  • “Select Configurations “ダイアログが表示されますので、”Select Configurations “をクリックします。 Debug」と「Release」の両方を選択⇒終了.
  • Step2:Hello-world C++プログラムを作成する
    1. 「プロジェクト・エクスプローラ」(左端のパネル)で”FirstProject“を右クリック…。 (または「ファイル」メニュー) ⇒新規作成 ⇒ソースファイル.
    2. 「新規ソースファイル」ダイアログがポップアップ表示されます。
      1. 「ソースファイル」の欄に「Hello.cpp」と入力します。
      2. 「完了」をクリックします。
    3. ソースファイル「Hello.cpp」が編集パネルに開きます(必要に応じて「test.cpp」をダブルクリックして開きます)。 以下のコードを入力してください。
      #include <iostream>using namespace std; int main() { cout << "Hello, world!" << endl; return 0;}
    「未解決インクルードエラー」の場合

    #include文の横に「未解決インクルード」というエラーが表示された場合、「ヘッダー用インクルードパス」が正しく設定されていない可能性があります。 プロジェクト」メニュー ⇒ 「プロパティ」 ⇒ 「C/C++全般」 ⇒ 「パスとシンボル」 ⇒ 「インクルード」タブで、

    Cygwin GCCの場合:

    1. “GNU C” に以下のディレクトリを追加します($CYGWIN_HOMEはあなたのCygwinインストールディレクトリです)。
      • $CYGWIN_HOME\lib\gcc\i686-pc-cygwin.5.x\include
      • $CYGWIN_HOME\lib\gcc\i686-pc-cygwin.5.x\include-fixed
      • $CYGWIN_HOME\usr\include
      • $CYGWIN_HOME\usr\include\w32api
    2. “Add” to “GNU C++”, Where the $CYGWIN_HOME is your Cygwin installed directory:
      • $CYGWIN_HOME\lib\gcc\i686-pc-cygwin.5.x\include\c++
      • $CYGWIN_HOME\lib\gcc\i686-pc-cygwin.5.x\include\c++\i686-pc-cygwin
      • $CYGWIN_HOME\lib\gcc\i686-pc-cygwin.5.x\include\c++\backward
      • $CYGWIN_HOME\lib\gcc\i686-pc-cygwin.5.x\include
      • $CYGWIN_HOME\lib\gcc\i686-pc-cygwin.5.x\include-fixed
      • $CYGWIN_HOME\usr\include
      • $CYGWIN_HOME\usr\include\w32api
    3. MinGW GCCについて。

      1. “GNU C” に以下のディレクトリを “追加” してください。
        • $MINGW_HOME\lib\gcc\mingw32.6.x\include
        • $MINGW_HOME\include
        • $MINGW_HOME\lib\gcc\mingw32.6.x\include-fixed
      2. “Add” to “GNU C++”, $MINGW_HOME は Cygwin がインストールされたディレクトリです。
        • $MINGW_HOME\lib\gcc\mingw32.6.x\include\c++
        • $MINGW_HOME\lib\gcc\mingw32.6.x\include\c++\mingw32
        • $MINGW_HOME\lib\gcc\mingw32.6.x\include\c++\backward
        • $MINGW_HOME\lib\gcc\mingw32.6.x\include
        • $MINGW_HOME\include
        • $MINGW_HOME\lib\gcc\mingw32.6.x\include-fixed
      3. Note: ヘッダのパスを見つけるには “stdio.h” 等ヘッダーでの検索で可能です。 (C言語の場合)および”iostream“。 (C++の場合)

        注意:リンク時に「共有ライブラリの読み込み中にエラー」が発生した場合。 cygwinに”libmpfr4“をインストールします。
        ステップ3:コンパイル/ビルド

        “FirstProject“の上で右クリックします。 (または、「プロジェクト」メニューを使用) ⇒ 「プロジェクトの構築」を選択して、プログラムをコンパイルしリンクします。

        Step 4: Run

        プログラムを実行するには、”FirstProject“の上で右クリックしてください。 (またはソース “test.cpp” 上の任意の場所、または “実行” メニューを選択) ⇒ Run As ⇒ Local C/C++ Application ⇒ (If ask, choose Cygwin’s gdb debugger) ⇒ The output “Hello, world!” appears on “Console” panel.

        NOTE: あなたはプログラミング問題のEACHに対して新しいC++プロジェクトを作成しなければなりません。 これは、おもちゃのプログラムを書くために厄介です!

        C Program

        上記と同じ手順を実行します。 Cプロジェクト」を作成します(「C++プロジェクト」の代わりに)。 以下のHello-worldプログラム(”Hello.c“と呼ばれる)を試してください。

        #include <stdio.h> int main() { printf("Hello, world!\n"); return 0;}

        C++ Program with Makefile

        これまでの例では、Eclipseが自動的にプログラムをビルドするmakefileを生成する、いわゆるマネージドmakeを使用しています。

        Step 1: C++ Makefile プロジェクトを作成する

        [ファイル] メニューから [新規作成] ⇒ [プロジェクト…] を実行します。 ⇒ C/C++ ⇒ C++プロジェクト ⇒ “プロジェクト名 “に”HelloCppMakefile“と入力します。 ⇒ プロジェクトの種類」で「Makefile プロジェクト」、「空のプロジェクト」を選択 ⇒ 「ツールチェーン」で「Cygwin GCC」または「MinGW GCC」を選択します。 警告メッセージは無視してください。

        ステップ2:C++プログラムを書く

        プロジェクト上で右クリック ⇒ 新規作成 ⇒ ソースファイル ⇒ 「ソースファイル」に”Hello.cpp“を入力します。 ⇒ 次のソースコードを入力します:

        #include <iostream>using namespace std; int main() {cout << "Hello, world!" << endl;return 0;}
        Step 3: Makefileを書く

        プロジェクトを右クリック ⇒新規作成 ⇒ファイル ⇒「ファイル名」に”makefile“を入力します。 ⇒以下のコードを入力します。 インデントにはTab(NOT Spaces)を使うことに注意してください。

        all: Hello.exe clean:rm Hello.o Hello.exe Hello.exe: Hello.og++ -g -o Hello.exe Hello.o Hello.o: Hello.cppg++ -c -g Hello.cpp
        Step 4: Build the Project

        プロジェクトを右クリック ⇒ Build Project.

        Step 5: Run the Program

        プロジェクトを右クリック ⇒ Run As ⇒ Local C/C++ Application.Step6:ビルド・プロジェクトを実行します。

        1 つのプロジェクトでおもちゃのプログラムをコンパイルするために makefile を書く。

        ドキュメントを読む

        少なくとも、Eclipse の “Workbench User Guide” と “C/C++ Development User Guide” を参照すべきです。 これは、後でいくつかのことを行う方法を見つけようとする多くの苦痛な時間を節約します。

        Debugging C/C++ Programs in Eclipse CDT

        グラフィック デバッガーを使用してプログラムをデバッグできることは、プログラミングにおいて重要です。 1108>

        Step 0: C++ プログラムを書く – 次のプログラムは、n の階乗 (=1*2*3*...*n) を計算し、表示するものです。

        1234567891011121314
        #include <iostream>using namespace std; int main() { int n = 20; int factorial = 1; // n! = 1*2*3...*n for (int i = 1; i <= n; i++) { factorial *= i; } cout << "The Factorial of " << n << " is " << factorial << endl; return 0;}
        The Factorial of 20 is -2102132736

        グラフィックデバッガを使ってプログラムをデバッグしてみましょう。

        ステップ 1: 最初のブレークポイントを設定する – ブレークポイントは、内部状態 (たとえば、, を調べるために、プログラムの実行を一時停止します。 デバッガを起動する前に、プログラム内部の実行を一時停止するためのブレークポイントを少なくとも1つ設定する必要があります。 main() 関数を含む行の左端をダブルクリックして、main() にブレークポイントを設定します。 1108>

        ステップ2:デバッガを起動する – プロジェクトを右クリック(または「実行」メニューを使用) ⇒「デバッグ名」 ⇒「ローカル C/C++ アプリケーション」 ⇒「はい」を選択して「デバッグ」視点に切り替える(視点とは、編集やデバッグなどの特定の開発作業に適したパネルの特定の配置のことです)。

        次の図に示すように、ハイライトされた線(青い矢印で示されている)は次のステップで実行される文を示しています。

        Step 3: ステップオーバーして変数と出力を見る – 「ステップオーバー」ボタンをクリックして(または「実行」メニューから「ステップオーバー」を選択して)、プログラムをシングルステップで実行してください。 各ステップで、変数の値(「変数」パネル)と、プログラムによって生成された出力(「コンソール」パネル)を調べてください(もしあれば)。

        Single-stepping through the program and watch the values of internal variables and the outputs produced is the ultimate means in debugging programs – because it is exactly how the computer runs your program.

        ステップ 4: Breakpoint, Run-To-Line, Resume and Terminate – 前述のように、ブレークポイントはプログラムの実行を一時停止してプログラムの内部状態を調査できるようにするもの。

        「再開」はプログラムの実行を続け、次のブレークポイントまで、またはプログラムの終わりまで実行します。

        あるいは、特定のステートメントにカーソルを置き、「実行」メニューから「Run-To-Line」を発行してその行まで実行を継続することができます。 プログラムの終了まで、常に「Terminate」または「Resume」で現在のデバッグセッションを終了してください。

        ステップ 5: C/C++ パースペクティブに戻る – 右上隅にある「C/C++」パースペクティブ アイコンをクリックして、さらなるプログラミングのために「C/C++」パースペクティブに切り替えます (または「ウィンドウ」メニュー ⇒ 「パースペクティブを開く」 ⇒ 「C/C++」)。 デバッガが提供する機能を探求してください。

        その他のデバッガの機能

        変数の値を変更する。 変数」パネルに新しい値を入力することにより、変数の値を変更することができます。 これは、ソースコードを変更せずに、プログラムの動作を一時的に変更するのに便利です。

        ステップ-イントとステップ-リターン。 関数をデバッグするには、「ステップ-イント」を使用して、メソッドの最初のステートメントに踏み込む必要があります。 メソッド内の任意の場所で呼び出し元に戻るには、”Step-Return “を使用することができます。 1108>

        NOTE: デバッグ中に “Can’t find a source file at /cygdrive/c…” というエラーメッセージが表示されたら、”/cygdrive/c” と “c:/” の間のマッピングを設定する必要があります (プログラムがドライブ c に保存されていると仮定しています。) Window” ⇒ “Preferences” ⇒ “C/C++”

        Tips & Tricks

        Eclipse for Java の Tips & Tricks で Eclipse を使用する際の一般的なヒントをお読みください。

        GCC による C/C++ ソフトウェア開発

        1. プロジェクトのビルドに使用する Eclipse CDT のコマンドは「<workspace>\.metadata\.plugins\org.eclipse.cdt.ui\global-build.log」にあります。
        2. include-paths, library-paths, libraries を設定する。 プログラムをビルドするとき、コンパイラはソースコードをコンパイルするためにヘッダーファイルを必要とし、リンカーは外部参照を解決するためにライブラリを必要とします。 コンパイラは、#include命令で指定されたヘッダをinclude-pathsで検索する。 リンカはプログラムのリンクに必要な「ライブラリ」を「ライブラリパス」で検索する。 GCCでは、include-pathは-Idirオプションか環境変数CPATHで指定する。 library-pathは-Ldirオプション、または環境変数LIBRARY_PATHで指定する。 ライブラリlibxxx.aは、-lxxxオプション(小文字の'l'、プレフィックスlibと.a拡張なし)で指定します。
          Eclipse CDTでは、プロジェクト上で右クリック ⇒プロパティ ⇒ C/C++ General ⇒ Paths and Symbols ⇒「Include」、「Library Paths」、「Libraries」タブで、include pathsとlibrary pathsとlibrariesを設定することができます。 設定は、選択したプロジェクトにのみ適用されます。
          すべてのプロジェクトのインクルードパスとライブラリパスを設定するには、環境変数CPATHとLIBRARY_PATHを設定します。 Eclipse で、”Window” ⇒ Preferences ⇒ C/C++ ⇒ Build ⇒ Environment.
          あるいは、ヘッダーとライブラリをシステム・ディレクトリーにコピーし、include-paths と library-paths を省略できます。
        3. GLUT で OpenGL を使用。 Cygwin の場合、gcc, g++, gdb, make (Devel カテゴリ) と opengl, freeglut (graphics カテゴリ) をインストールする必要があります。 ヘッダ gl.h, glu.h, glut.h は $cygwin\usr\include\w32api\GL に保存されています。 ヘッダをインクルードするには #include <GL/gl__.h> を使ってください。 ライブラリ libopengl32.a libglu32.a と libglut32.a は $cygwin\lib\w32api に収められている。 リンク時にこれらのライブラリを指定するには、-lopengl32 -lglu32 -lglut32 オプション (lib 接頭辞と .a 拡張子なし) を使用します。
        4. OpenGL with SDL: SDL を http://www.libsdl.org からダウンロードします。 Development Libraries ⇒ win32 ⇒ mingw32 ⇒ Unzip を選択。 headers ディレクトリ SDL (include の下) を $cygwin\usr\include\w32api に、lib にあるすべてのライブラリファイルを $cygwin\lib\w32api に、ランタイムライブラリ SDL.dll (bin の下) を Windows/System32 にコピーしてください。 プログラムの中で、以下の2つのヘッダをインクルードする。 #include <SDL/sdl.h> と #include <SDL/sdl_opengl.h> をプログラムに含める。 リンクのために、これらのライブラリを追加する。 -lSDL -lSDLmain.
        5. #pragma Comment 指令: pragma comment 指令、例えば #pragma comment(lib, "opengl32.lib") は、特定のライブラリをインクルードするためによく使われます (-l オプションと同じです)。 このディレクティブは Windows のコンパイラでは動作しますが、 GCC では動作しません。
        6. Error “multiple target patterns”: GNU make に問題があるようです ($Cygwin\bin\make.exe にて)。 このコピー@ http://www.cmake.org/files/cygwin/make.exe に差し替えました。 gcc ライブラリは (C 仕様に準拠した) バッファード I/O を使用します。 出力は、改行文字の後にのみ、出力ストリームに書き出されます。 fflush().
        7. プロジェクト名に “setup “という単語を含んではいけないということで、出力をフラッシュすることができます。 C/C++ プロジェクトの名前に “setup” という単語を含む名前を付けると、結果的に “*setup*.exe” は UAC (User Authorization Control) を発動し、実行には管理者権限が必要になります。 (これを理解するのに数時間かかりました! “hello.exe” を “mysetup.exe” にリネームしてみてください。)

        Eclipse におけるファイル I/O

        Java のファイル IO.

        は、Eclipse を参照してください。

    コメントを残す コメントをキャンセル

    メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

    アーカイブ

    • 2022年1月
    • 2021年12月
    • 2021年11月
    • 2021年10月
    • 2021年9月

    メタ情報

    • ログイン
    • 投稿フィード
    • コメントフィード
    • WordPress.org
    • DeutschDeutsch
    • NederlandsNederlands
    • SvenskaSvenska
    • DanskDansk
    • EspañolEspañol
    • FrançaisFrançais
    • PortuguêsPortuguês
    • ItalianoItaliano
    • RomânăRomână
    • PolskiPolski
    • ČeštinaČeština
    • MagyarMagyar
    • SuomiSuomi
    • 日本語日本語

    Copyright Trend Repository 2022 | Theme by ThemeinProgress | Proudly powered by WordPress