MinGWInCCDevelopmentPackJa
ドイツの、Best Friedemann Seebass 氏からのメイルによるものです。
MinGW のインストール:
1) 新規フォルダ、例えば D:\programs\MinGW、を作成し、次のファイル (またはより新しいもの) をそこに展開します (フォルダの構造は維持します):
- mingw-runtime-3.11.tar.gz
- gcc-core-3.4.2-20040916-1.tar.gz
- gcc-g++-3.4.2-20040916-1.tar.gz
- binutils-2.16.91-20060119-1.tar.gz
- w32api-3.8.tar.gz
=> 次のようなフォルダ構造になります:
- D:\programs\MinGW\bin
- D:\programs\MinGW\doc
- D:\programs\MinGW\include
- その他
2) gdb-6.3-2.exe を実行して D:\programs\MinGW にデバッガをインストールします。("current" のバージョン 5.2.1 には NetBeans 内の局所変数の出力の更新で問題があるようです)
3) 最小システム MSYS をインストール:
- MSYS-1.0.10.exe を実行します。
- 新規インストールフォルダを選択します、例えば D:\programs\msys\1.0
- 次のように質問に答えます:
- "Do you wish to continue with the post install?" "y"
- "Do you have MinGW installed?" "y"
- "Where is your MinGW installation?" "D:/programs/MinGW"
- スラッシュを使ってください、バックスラッシュではないです! パスは手で入力してください、コピー・ペーストは使えません!
4) PATH 環境変数を調整します:
- 文字列 "D:\programs\msys\1.0\bin;D:\programs\MinGW\bin;" を PATH 変数の先頭に入れます。
Netbeans C++ プラグインの調整:
コンパイルはできますが、C++ エディタはインクルードファイルを認識せず、printf() などのすべての関数を失われているとして赤線で印づけます。これを直すにはツール/オプションをクリックし、C/C++ タブを選択してパーサー設定ボタンを押します。適切なタブ (C- または C++ コンパイラ) を選択し、追加ボタンを押してヘッダーファイルが存在するすべてのフォルダを追加します。NetBeans はフォルダを再起的には探しませんので、フォルダはそれぞれ追加しなければなりません。
POSIX スレッドを使用したマルチスレッド:
Windows 独自のスレッドではなく POSIX スレッドを使用してマルチスレッドアプリケーションを開発したい場合、さらに Pthread Win32 ライブラリ が必要になります:
- pthreads-w32-2-8-0-release.exe をダウンロードします。
- 一時フォルダにファイルを展開します。
- "Pre-built.2" フォルダは "lib" フォルダと "include" フォルダを含みますので、その内容を同じ名前の MinGW フォルダに複写します。(私はライブラリ "libpthreadGCE2.a" を私のプロジェクトに追加しました)
- 例外処理を使用する場合には重要: アプリケーションは追加スイッチ "-mthreads" とともにコンパイルします。さもないと例外処理は安定して動作せず、予期しないクラッシュが起きるかもしれません。DLL からアプリケーションに例外が伝播する際に他の問題が起きるかもしれません。私はネット上でこれに関するいくつかのヒントを見つけましたが、私の DLL は例外を投げないので経験したことはありません。
MinGW 対 Cygwin:
私は最初に MinGW を使いましたが、これは Cygwin DLL を使いたくなかったからです。 しかし、MinGW make ツールで異なるプロジェクト間の依存に関して問題がありました (4月18日/19日付けの私のメイル参照)。 それで私は Cygwin に戻り ("-mno-cygwin" コンパイラスイッチを使用)、 それはよりよく C++ プラグインと統合されています。 DLL 内へのブレークポイントの設定は今は動かないようなのですが、 MinGW でよくなるかはテストしていません。
その他の参照
他にも、MinGW の設定の説明を含んでいる CND パックに関する詳細な文書があります。 http://www.netbeans.org/community/magazine/html/03/c++/
---
- 英文 (翻訳したバージョン: 7)
- 日本語 NetBeans ユーザー FAQ へ戻る
