MinGWについて(2012年)
Table of Contents
MinGW
ダウンロード
下記からインストーラをダウンロードする (2012.9.14現在の最新)
- https://sourceforge.net/projects/mingw/files/
- All Files
- Automated MinGW Installer
- mingw-get-inst
- mingw-get-inst-20120426
- mingw-get-inst-20120426.exe
- mingw-get-inst-20120426
- mingw-get-inst
- Automated MinGW Installer
- All Files
インストール
- exeファイルを実行する
- Repository Catalogues
- Use pre-packages repository catalogues を選択
- Select Destination Location
- インストール先は C:\usr\MinGW とする(デフォルトは C:\MinGW)
- Select Components
- C Compiler はデフォルト選択されている
- C++ Compiler と MSYS Basic System を追加で選択する
- 必要なパッケージがダウンロード及びインストールされる
- C:\usr\MinGW\varlog\mingw-get-log.txt にログが記録される
GnuWin32 Packages
ダウンロード
- GnuWin32 Packages からダウンロードする
下記は、NTEmacsビルド時に必要なもの それぞれにおいて、"Complete package, except sources" をダウンロードする。 一部は、ソースも必要。
- XPM 3.5.1-1
- ソースもインストールし、src\xpm\3.5.1\libXpm-3.5.1-src\lib\simx.hを MinGW/includeにコピーする
- LibPng 1.2.37
- ZLib 1.2.3
- LibUnGif 4.1.4
- LibJpeg 6b
- LibTiff 3.8.2
インストール
デフォルトのインストール先は C:\Program Files\GnuWin32 だが、MinGWのインストールされたディレクトリ (例 C:\usr\MinGW) にインストールする。
インストール後は、スタートメニューが下記の項目が追加される。 それぞれの項目からアンインストールが実行できる
Libxml
NTEmacs 24のビルド時に必要。インストーラは無い(2013.6.30現在)ので、下記を展開したものを、MinGWのインストールされたディレクトリ(例 C:\usr\MinGW)に上書きコピーする
- iconv-1.9.2.win32.zip
- libxml2-2.7.8.win32.zip
GDB
ダウンロード
下記からインストーラをダウンロードする 全て、Current Release を選ぶ
- https://sourceforge.net/projects/mingw/files/
- All Files
- GNU Source-Level Debugger
- gdb-5.2.1-1.exe (2009.07.04現在)
- GNU Source-Level Debugger
- All Files
インストール
- インストール先は C:\usr\gdb とする(デフォルトは C:\mingw )
MSYS
- MSYSについて を参照
コンパイラ/リンカのオプション設定
シフトJISのダメ文字対策
- https://sourceforge.net/projects/mingw/files/
- All Files
- GCC Version 3
- Previous Release: gcc-3.4.5-20060117-1
- gcc-g++-3.4.5-20060117-1.tar.gz
- Previous Release: gcc-3.4.5-20060117-1
- GCC Version 3
- All Files
- 上記をダウンロードして、展開する
- libexec\gcc\mingw32\3.4.5\cc1.exe を、インストール先のものを置き換える
- これを行うことで、下記オプションにてダメ文字('表'、'ソ'とか)を意識せずにコンパイルすることができるようになる
- eclipse の場合は、「プロパティー」→「C/C++ ビルド」→「設定」→「ツール設定」→「CGG C Compiler」→「その他」の「その他のフラグ」に追加する
-finput-charset=cp932 -fexec-charset=cp932
SUBSYSTEMの設定
- なにも設定しなくてもビルドは通るが、ウインドウアプリを生成した場合、アプリケーション起動時に同時にDOS画面が出てしまう
- リンカに対して、下記オプションを指定する。
- eclipse の場合は、「プロパティー」→「C/C++ ビルド」→「設定」→「ツール設定」→「MinGW C Linker」→「その他」の「リンカー・フラグ」に追加する
-Wl,--subsystem,windows -mwindows
- ちなみに、Visual C++ ではリンカの設定「システム」のところで ”Windows (/SUBSYSTEM:WINDOWS)”又は”コンソール (/SUBSYSTEM:CONSOLE)”を選択するようになっている
- ”Windows”の場合は WinMain()、”コンソール”の場合は main() 関数が無いと怒られる