トップ 検索 一覧 ヘルプ RSS ログイン

今更MinGW(2)の変更点

  • 追加された行はこのように表示されます。
  • 削除された行はこのように表示されます。
!!!今更MinGW/MSYS(2) mingwPORT:zlib,libjpeg
何かと入り用である[zlib|http://www.zlib.net/]/[libjpeg|http://www.ijg.org/]をMinGW環境にインストールする。
これらはそれぞれの公式サイトから取得してインストールも可能と思われるが、MinGWには'''mingwPORT'''と言う仕組みがあり、一部の有名ライブラリはMinGWに適した形でネットワークインストールできる。
これらはそれぞれの公式サイトから取得してインストールも可能と思われるが、MinGWには''mingwPORT''と言う仕組みがあり、一部の有名ライブラリはMinGWに適した形でネットワークインストールできる。
mingwPORTが行うのは大雑把に、
*インターネットからのソースアーカイブ取得
*ソースディレクトリ(/usr/src)への展開(解凍)
*MinGW向けのパッチ当て
*ビルド
*MinGW環境へのインストール
である。パッチ当てと言っても機能的な部分を変更する訳ではなく、ほとんどはMinGW環境でのビルドエラーの修正や、インストールファイル名の補正程度だ。

!!!mingwPORTを使用可能にする
mingwPORTを使用するためには'''wget'''が必要になる。[MinGWのリリースページ|http://sourceforge.net/project/showfiles.php?group_id=2435]の"MinGW Utilities: wget"から'''wget-1.9.1.tar.gz'''を、さらに"User Contributed: mingwPORT"から'''wget-1.9.1-mingwPORT.tar.bz2'''を取得する。
mingwPORTを使用するためには''wget''が必要になる。[MinGWのリリースページ|http://sourceforge.net/project/showfiles.php?group_id=2435]の"MinGW Utilities: wget"から''wget-1.9.1.tar.gz''を、さらに"User Contributed: mingwPORT"から''wget-1.9.1-mingwPORT.tar.bz2''を取得する。

MSYSのディレクトリが足りていないので、まず/usr/src(MSYSでは/usrが/と同等のため、標準配置ではC:\msys\1.0\srcになる)を作成し、上記ファイルをそこで解凍し、wget-1.9.1/mingwPORTでmingwPORT.shを実行する。
 $ mkdir /usr/src
 $ cp wget-1.9.1* /usr/src/
 $ cd /usr/src/
 $ tar xfvz wget-1.9.1.tar.gz
 $ tar xfvj wget-1.9.1-mingwPORT.tar.bz2
 $ cd wget-1.9.1/mingwPORT
 $ ./mingwPORT.sh
mingwPORT.shでは以下のような質問が出る。
 Download file? (Yes) 
 Unarchive file? (Yes) 
これらにはnoと入力し、残りの質問はEnterでよい。
mingwPORTの標準的使用方法は対象のmingwPORTアーカイブを解凍してmingwPORT.shを実行するだけだ。
が、ここではwget自身が入っていないこと、/tmpがWindowsの一次ディレクトリに割り当たることから、手動で解凍までを行っている。

!!!zlib
wgetが入ってしまえば、zlibは簡単だ。
"User Contributed: mingwPORT"から'''zlib-1.2.3-mingwPORT-1.tar.bz2'''を取得し、解凍してzlib-1.2.3/mingwPORTに移動、mingwPORT.shを実行する。
"User Contributed: mingwPORT"から''zlib-1.2.3-mingwPORT-1.tar.bz2''を取得し、解凍してzlib-1.2.3/mingwPORTに移動、mingwPORT.shを実行する。
質問は全てEnterでよい。
 $ tar xfvj zlib-1.2.3-mingwPORT-1.tar.bz2
 $ cd zlib-1.2.3/mingwPORT
 $ ./mingwPORT.sh

!!!libjpeg
libjpegもzlibと全く同様の手順でインストール出来る。