GCCを自前でビルドしたい方向けの情報です。
興味のない方は読み飛ばしてください。
libiconvは、以下の場所にあります。
最新版は、こちらでチェックしてください。
http://www.gnu.org/software/libiconv/ソースコード
http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.16.tar.gz
を、適当なディレクトリに保存します。
次に、以下のページからパッチを入手します。
http://www2d.biglobe.ne.jp/~msyk/software/libiconv-1.13-ja-patch.htmlダウンロードより、
libiconv-1.13-ja-1.patch.gz
を、適当なディレクトリに保存します。2021/07/11 追記libiconv-1.13-ja-1.patch.gz をlibiconv-1.16に適用できるように修正しました。
libiconv-1.16-ja-1.patch.gzMSYSで、ファイルを保存したディレクトリに移動し、
$ tar xzf libiconv-1.16.tar.gz
$ cd libiconv-1.16
$ gzip -dc ../libiconv-1.16-ja-1.patch.gz | patch -p1
$ ./configure --prefix=/mingw --disable-shared --enable-static
$ make
$ make install
以上で終了です。
【補足】
2021/07/11 追記libiconv-1.16用のパッチを作成しました。
パッチの説明は、以下の記事を参考にしてください。
libiconv-1.14にlibiconv-1.13用のパッチを適用してみました【更新履歴】を見る
2011/12/07 追記
他のライブラリで、libiconvのsharedライブラリが必要なものがあったため、「--disable-shared」を削除しました。
$ ./configure --prefix=/mingw --disable-shared --enable-static
$ ./configure --prefix=/mingw --enable-static
2012/07/11 追記
libiconvのsharedライブラリは不要になったため、「--disable-shared」を追加しました。
$ ./configure --prefix=/mingw --enable-static
$ ./configure --prefix=/mingw --disable-shared --enable-static
2012/10/26 追記
libiconv-1.13-ja-1.patch.gz をlibiconv-1.14に適用できるように修正しました。
libiconv-1.14-ja-1.patch.gz
2012/10/26 追記
パッチの手順を修正しました。
$ gunzip libiconv-1.13-ja-1.patch.gz
$ cd libiconv-1.13.1
$ patch -p1 < ../libiconv-1.13-ja-1.patch
$ gzip -dc ../libiconv-1.13-ja-1.patch.gz | patch -p1
2012/10/26 追記
libiconv-1.13.1 を libiconv-1.14 に修正しました。
libiconv-1.13-ja-1.patch.gz を libiconv-1.14-ja-1.patch.gz に修正しました。
2021/07/11 追記
libiconv-1.14 を libiconv-1.16 に修正しました。
libiconv-1.14-ja-1.patch.gz を libiconv-1.16-ja-1.patch.gz に修正しました。
以下の説明を削除しました。
2011/12/08 追記
最新版は、libiconv-1.14.tar.gz ですが、パッチがリリースされてから採用する予定です。
【更新履歴】を閉じる
posted by あべちん at 13:39
|
Comment(9)
|
TrackBack(0)
|
GCC追加ライブラリ
こんばんわ
GCC4.7ついでに
1.14のパッチどっかにないかなーとおもってたら
見つけました
http://apolloron.org/software/libiconv-1.14-ja/
自分のほうでも試してみます
情報ありがとうございます。
なかなかパッチが更新されないので、パッチなしで1.14にしようかどうしようかと思ってましたが、パッチを作っている方がいたんですね。
時間のあるときに試してみます。
libiconv-1.14.tar.gzの解凍の部分である
tar xzf libiconv-1.14.tar.gzの筈が
tar xzf libiconv-1.4.tar.gzになっておりました
いつもお世話になってます
今後もよろしくお願いします
あら、気が付きませんでした。
ご指摘ありがとうございます。
修正しました。m(_ _)m
こちらこそ、よろしくお願いします。
丁寧なビルド情報を公開して頂きましてありがとうございます。
libiconv-1.14のビルド中にエラーが発生しましたので
その内容と、対処についてご報告させて頂きます。
(libiconvではなく私がインストールのMinGWに問題があったようです)
make install時に以下のメッセージと共にエラーが発生しました。
libtool: link: cannot find the library `/home/keith/staged/mingw32/lib/libiconv.la' or unhandled argument `/home/keith/staged/mingw32/lib/libiconv.la'
make[1]: *** [install] Error 1
そこで"/home/keith/staged"で検索し、
以下のように修正したところビルドエラーはなくなり、
目的であったlibassも問題なく動作しております。
/mingw/lib/libgettextlib.la (line19)
# Libraries that this one depends upon.
dependency_libs=' -L/mingw/lib /mingw/lib/libintl.la /home/keith/staged/mingw32/lib/libiconv.la /home/keith/mingw32/mingw32/lib/libstdc++.la'
↓
dependency_libs=' -L/mingw/lib /mingw/lib/libintl.la /mingw/lib/libiconv.la'
------------------
/mingw/lib/libgettextpo.la (line19)
# Libraries that this one depends upon.
dependency_libs=' -L/mingw/lib /mingw/lib/libintl.la /home/keith/staged/mingw32/lib/libiconv.la'
↓
dependency_libs=' -L/mingw/lib /mingw/lib/libintl.la /mingw/lib/libiconv.la'
------------------
/mingw/lib/libgettextsrc.la (line19)
# Libraries that this one depends upon.
dependency_libs=' /mingw/lib/libgettextlib.la -L/mingw/lib /mingw/lib/libintl.la /home/keith/staged/mingw32/lib/libiconv.la /home/keith/mingw32/mingw32/lib/libstdc++.la'
↓
dependency_libs=' /mingw/lib/libgettextlib.la -L/mingw/lib /mingw/lib/libintl.la /mingw/lib/libiconv.la'
------------------
/mingw/lib/libintl.la (line19)
# Libraries that this one depends upon.
dependency_libs=' -L/mingw/lib /home/keith/staged/mingw32/lib/libiconv.la'
↓
dependency_libs=' -L/mingw/lib /mingw/lib/libiconv.la'
ご訪問ありがとうございます。
お返事が遅くなり、申し訳ありません。
私のMinGW環境ではgettextをインストールしていないので、原因が分からなかったのですが、libiconvのInstallationの説明で、
https://www.gnu.org/software/libiconv/
libiconvとgettextは循環依存(a circular dependency)しているので、最初にlibiconv、次にgettext、次にまたlibiconvをinstallしてください。
というようなことが書かれています。
以前にgettextをinstallしたことがあれば、一度gettextをuninstallしてから、上記の順番でinstallしなおせば上手くいくかもしれません。
もう解決して間に合っているかもしれませんが、時間がある時にでもお試しください。
https://savannah.gnu.org/forum/forum.php?forum_id=8790
を読む限り、日本語パッチの一部が組み込まれたんでしょかね。
これから確認してみます・・・
一応訂正しときます。
コメントありがとうございます。
お返事が遅くなり、申し訳ありません。
libiconv-1.13用のパッチは1.15に適用できなくなってしまったのですが、cp932パッチだけなら、1.15でも適用できました。
http://www2d.biglobe.ne.jp/~msyk/software/libiconv-1.13-cp932-patch.html
ざっと見たところでは、1.15からISO-2022-JP-MSが追加されたのと、intがsize_tに変更されています。
1.14と1.15の差分を取って、1.15用のパッチを作ろうかと思ったのですが、面倒なので止めました。
しばらくは1.14を使う予定です。