eclipse C/C++を使ってみる
eclips C/C++を使ってみようと思う。PHPではビルドがなかったので違いはそのくらいかな?
C/C++ 開発者向けパッケージです。
Eclipse 公式パッケージ C/C++ Developers のプラグインと追加プラグインで構成されています。
mingw ディレクトリは CDT により自動認識されます。Eclipse 上から使用する限り、環境変数 PATH を設定する必要はありません。Mingw gdb 7 系に Eclipse からの環境変数を引き継げないバグがあるため、Windows の環境変数 Path に (インストールディレクトリ)¥mingw¥bin を追加してください。これを設定しないと実行はできますが、デバッグができません。64bit 版には同じく自動認識される msys ディレクトリに rm コマンドなどを含む mingw-get-setup の msys-base が含まれています。
64bit 版 C++ プロジェクトで標準出力がコンソールに表示されない場合は、プロジェクトのプロパティ > C/C++ ビルド > 設定 > ツール設定タブ > MinGW C++ Linker > その他 > リンカー・フラグに -static を設定
Mac 版に mingw は含まれていません。
- Pleiades All in Oneダウンロード最新版の[Eclipse 2020]をクリックする。
- Windows 64bit Full Edition C/C++(pleiades-2020-12-cpp-win-64bit-jre_20201101.zip)をダウンロードする。
- zipを7-Zipで展開する。
- pleiades/eclipse/eclipse.exeを起動する。
- Eclipse IDEランチャーが開くので[起動]をクリックする。
- [ファイル]-[新規]-[C/C++プロジェクト]を選択すると[新規C/C++プロジェクト]ダイアログが開く。
- [All]-[C++管理ビルド]を選択して[次へ]
- プロジェクト名を入力し、プロジェクトタイプ:[実行可能]-[Hello World C++プロジェクト]、ツールチェーン:[MinGW GCC]を選んで[完了]をクリックする。
ビルドする
ハンマーアイコンをクリックしてビルドする。

ビルドの結果HelloCppWorld.exeが作成された。

実行する
実行ボタンをクリックして実行する。

はじめは実行構成ダイアログが開くので新規構成ボタンを押す。


実行ボタンを押す。

”!!!Hello World!!!"が表示された。
デバッガ
[実行]-[デバッグ]が選べなかったので、[実行]-[デバッグ構成]を選ぶ。

デバッグ構成で[デバッグ]をクリックする。デバッグはバグ(プログラムの誤り=不具合、虫)を取るという意味なので、虫の絵が描かれている。

デバッグ用のパースペクティブに切り替えますか?と確認ダイアログが出るので[切り替え]をクリックする。

mainの中で実行停止するのでステップボタンを押す。二つあるのは関数の中に入るかどうかが違うがここは関数呼び出しではないのでどちらでも一緒だ。

“!!!Hello World!!!"が表示される。
Eclipse からの環境変数を引き継げないバグがあるため、Windows の環境変数 Path に (インストールディレクトリ)¥mingw¥bin を追加してください。これを設定しないと実行はできますが、デバッグができません。
あれっ?Pleiades All in One C/C++の説明にデバッグができませんとあるのでどこで出来なくなるかと思ったけど、デバッグできるな。デバッグ構成でgdb.exeがフルパスで書かれていたのでデバッグできるのかな。