fontconfigのインストールには、FreeType、Expat、libiconvライブラリ、pkg-configが必要ですので、先にインストールしておいてください。
FreeType(libfreetype)のコンパイル&インストールExpatのコンパイル&インストールlibiconvのコンパイル&インストールpkg-configのインストールfontconfigは、以下の場所にあります。
http://www.freedesktop.org/wiki/Software/fontconfigReleasesThe current stable series is 2.12.0. All releases are available in the
release directory.
http://www.freedesktop.org/software/fontconfig/release/より、
fontconfig-2.12.1.tar.bz2
を、適当なディレクトリに保存します。
2015/03/19 追記fontconfig-2.11.93 から、Pythonが必要になりました。
ここから、Python 2か3をダウンロードしてインストールしてください。
https://www.python.org/downloads/configureの先頭に、インストールしたPythonを指定します。
MSYSで、ファイルを保存したディレクトリに移動し、
$ tar xjf fontconfig-2.12.1.tar.bz2
$ cd fontconfig-2.12.1
$ PYTHON=/c/Python34/python ./configure --prefix=/mingw --disable-shared --disable-docs --enable-iconv --with-libiconv-includes=/mingw/include
$ make
$ make install
以上で終了です。
【補足】
2012/06/27 追記git版は、以下の場所の「Download」から入手できます。
http://cgit.freedesktop.org/fontconfig/git版のコンパイル手順については、以下の記事を参考にしてください。
fontconfigのconfigureで「PKG_PROG_PKG_CONFIG: command not found」【更新履歴】を見る
2011/12/09 追記
gitのソースからだと、エラーでコンパイルできませんでした。
ソースコードの入手先など、全面修正しました。
Font customization and configuration library
http://cgit.freedesktop.org/fontconfig/
http://www.freedesktop.org/wiki/Software/fontconfig
Download より、
fontconfig-2.8.0.tar.bz2
Releases
The current stable series is 2.8. All releases are available in the release directory.
http://www.freedesktop.org/software/fontconfig/release/
より、
fontconfig-2.8.0.tar.gz
を、適当なディレクトリに保存します。
MSYSで、ファイルを保存したディレクトリに移動し、
$ tar xjf fontconfig-2.8.0.tar.bz2
$ tar xzf fontconfig-2.8.0.tar.gz
2012/03/14 追記
fontconfig-2.9.0がリリースされています。
http://cgit.freedesktop.org/fontconfig/
Download より、
fontconfig-2.9.0.tar.gz
git版のコンパイル手順については、以下の記事を参考にしてください。
fontconfigのconfigureで「PKG_PROG_PKG_CONFIG: command not found」
2012/06/27 追記
最新版は、fontconfig-2.9.92 です。
fontconfig-2.8.0 を fontconfig-2.9.92 に修正しました。
2012/06/27 追記
make install の時、以下のようなエラーが出てストップしてしまう場合があります。
rm -f 20-unhint-small-vera.conf; ln -s /mingw/share/fontconfig/conf.avail/20-unhint-small-vera.conf .
ln: creating symbolic link `./20-unhint-small-vera.conf' to `/mingw/share/fontconfig/conf.avail/20-unhint-small-vera.conf': No such file or directory
その場合、以下のように「-k」を付けて、エラーでストップしないようにインストールしてから、もう一度インストールし直してみてください。
$ make -k install
$ make install
2012/07/18 追記
最新版は、fontconfig-2.10.0 です。
fontconfig-2.9.92 を fontconfig-2.10.0 に修正しました。
2012/07/28 追記
最新版は、fontconfig-2.10.1 です。
fontconfig-2.10.0 を fontconfig-2.10.1 に修正しました。
2012/11/28 追記
最新版は、fontconfig-2.10.2 です。
fontconfig-2.10.1 を fontconfig-2.10.2 に修正しました。
2012/11/28 追記
説明文を修正しました。
The current stable series is 2.92.10.0. All releases are available in the release directory.
2012/11/28 追記
ソースファイルをgzからbz2に修正しました。
tarのオプションも修正しました。
$ tar xzf fontconfig-2.10.2.tar.gz
$ tar xjf fontconfig-2.10.2.tar.bz2
2013/01/12 追記
最新版は、fontconfig-2.10.91 です。
fontconfig-2.10.2 を fontconfig-2.10.91 に修正しました。
2013/01/12 追記
Windows XPの場合、fontconfig-2.10.91で、make installの時にfc-cache.exeが実行されると、以下のようなエラーのダイアログが出て失敗します。
fc-cache.exe - エントリ ポイントが見つかりません
プロシージャ エントリ ポイント _mktemp_s がダイナミック リンク ライブラリ msvcrt.dll から見つかりませんでした。
src/fccompat.cで、Windows XPに無い_mktemp_s関数が使われているのが原因です。
エラーが出る場合、以下ののパッチを適用してみてください。
fontconfig-fccompat-mingw.diff
$ patch -p1 < fontconfig-fccompat-mingw.diff
2013/04/25 追記
最新版は、fontconfig-2.10.92 です。
fontconfig-2.10.91 を fontconfig-2.10.92 に修正しました。
2013/05/21 追記
最新版は、fontconfig-2.10.93 です。
fontconfig-2.10.92 を fontconfig-2.10.93 に修正しました。
2013/05/21 追記
configureオプションに、「--disable-shared --disable-docs」を追加しました。
2013/07/21 追記
configureの後、pkg-config用のファイル「fontconfig.pc」の「Libs.private:」項目に、
-liconv
を追加するようにしました。
$ sed -i.orig -e "/Libs.private:/s/$/-liconv/" fontconfig.pc
2013/08/31 追記
最新版は、fontconfig-2.10.95 です。
fontconfig-2.10.93 を fontconfig-2.10.95 に修正しました。
2013/10/14 追記
fontconfig-2.10.91の、src/fccompat.cのエラーはすでに修正されていました。
パッチを削除しました。
$ patch -p1 < fontconfig-fccompat-mingw.diff
2013/10/14 追記
最新版は、fontconfig-2.11.0 です。
The current stable series is 2.10.0.
The current stable series is 2.11.0.
fontconfig-2.10.95 を fontconfig-2.11.0 に修正しました。
2013/10/14 追記
test/test-migration.c がエラーでコンパイルできませんが、git版で、そのファイルをコンパイルしないように修正されています。
http://cgit.freedesktop.org/fontconfig/commit/?id=5406919c5e186f74ccdade1a65344ce7b5c56a64
configureの前にパッチを適用して、autoreconfを実行します。
fontconfig-2.11.0-g5406919.diff
$ patch -p1 < fontconfig-2.11.0-g5406919.diff
$ autoreconf
2013/10/14 追記
configureオプションに「--enable-iconv --with-libiconv-includes=/mingw/include」を追加しました。
$ ./configure --prefix=/mingw --disable-shared --disable-docs
$ ./configure --prefix=/mingw --disable-shared --disable-docs --enable-iconv --with-libiconv-includes=/mingw/include
2013/10/14 追記
configure後の「fontconfig.pc」の修正は不要だったので、削除しました。
$ sed -i.orig -e "/Libs.private:/s/$/-liconv/" fontconfig.pc
2014/03/25 追記
最新版は、fontconfig-2.11.1 です。
fontconfig-2.11.0 を fontconfig-2.11.1 に修正しました。
2014/03/25 追記
test/test-migration.c のパッチは不要になりました。
$ patch -p1 < fontconfig-2.11.0-g5406919.diff
$ autoreconf
2015/01/21 追記
最新版は、fontconfig-2.11.92 です。
fontconfig-2.11.1 を fontconfig-2.11.92 に修正しました。
2015/03/19 追記
最新版は、fontconfig-2.11.93 です。
fontconfig-2.11.92 を fontconfig-2.11.93 に修正しました。
2015/03/19 追記
fontconfig-2.11.93 から、Pythonが必要になりました。
ここから、Python 2か3をダウンロードしてインストールしてください。
https://www.python.org/downloads/
configureの先頭に、インストールしたPythonを指定します。
$ ./configure --prefix=/mingw --disable-shared --disable-docs --enable-iconv --with-libiconv-includes=/mingw/include
$ PYTHON=/c/Python34/python ./configure --prefix=/mingw --disable-shared --disable-docs --enable-iconv --with-libiconv-includes=/mingw/include
2015/10/09 追記
最新版は、fontconfig-2.11.94 です。
fontconfig-2.11.93 を fontconfig-2.11.94 に修正しました。
2016/04/16 追記
最新版は、fontconfig-2.11.95 です。
fontconfig-2.11.94 を fontconfig-2.11.95 に修正しました。
2016/09/29 追記
最新版は、fontconfig-2.12.1 です。
fontconfig-2.11.95 を fontconfig-2.12.1 に修正しました。
文中のバージョンを修正しました。
The current stable series is 2.11.1.
The current stable series is 2.12.0.
【更新履歴】を閉じる
checking for FT_Get_X11_Font_Format... yes
checking for FT_Select_Size... yes
checking for FT_Bitmap_Size.y_ppem... yes
./configure: line 13137: PKG_PROG_PKG_CONFIG: command not found
./configure: line 13140: syntax error near unexpected token `LIBXML2,'
./configure: line 13140: ` PKG_CHECK_MODULES(LIBXML2, libxml-2.0 >= 2.6)'
---
./autogen.sh \
--prefix="/mingw/i686-pc-mingw32" \
--build="i686-pc-mingw32" \
--host="i686-pc-mingw32" \
--with-freetype-config="/mingw/i686-pc-mingw32/bin/freetype-config" \
--disable-shared --enable-static --enable-fast-install
make clean && make && make install
---
xhmikosr GCC4.6.2 Fullなので
gettext-runtime_0.18.1.1-2_win32
glib_2.28.8-1_win32
pkg-config_0.26-1_win32
は入っているんだけどな・・・
私も、gitのソースだとそのエラーでコンパイルできませんでした。
Downloadにあるソースがしばらく更新されていないみたいなので、gitの方をコンパイルしてみたかったのですが、libassが動作すればいいかということで、あきらめました。
もしかして、expatの代わりにlibxml2を使えば良いのかもしれませんが、試していません。
逆にgitをmakeしてみようかな。
↑のautoreconf済のものでmake install成功しました。
お騒がせしました。
すみません。
ソースの入手先を勘違いしていました。
configureファイルは最初からあったはずなのに、おかしいなと思いました。
もう解決済みですね。
失礼いたしました。
*** Warning: This system can not link to static lib archive /mingw/lib/libfreety
pe.la.
***
と出て「make install」で
/bin/install: cannot stat `.libs/libfontconfig.dll.a': No such file or directory
と出てインストールができません;;
なぜでしょうか?
pe.la.
***」はmake installで出ました
「./configure --prefix=/mingw」ではありませn
エラーが再現できないのですが、クロスコンパイル環境とか、環境によるのでしょうかね。
*.dll.a は、とりあえず必要無いと思いますので、
./configure --prefix=/mingw --disable-shared
として、makeし直してみてください。
git版と同じ方法でautogen.sh make make install出来ました。
ありがとうございました。
コメントありがとうございます。
fontconfigのコンパイルは、かなりハマりました。
他に困っている人がいたら、この記事にたどりついて、解決するといいですね。
ちなみに、
http://oku.edu.mie-u.ac.jp/~okumura/texwiki/?poppler
ここを参考に、pdf2htmlEX というツールをビルドする前段階で引っかかっていました。
ありがとうございました。
コメントありがとうございます。
お役に立ててよかったです。
苦労して修正した甲斐がありました(笑)
pstと申します。
最新のfontconfig-2.10.95をコンパイルしようとしましたが、make時にautomake1.13を要求されるエラーがでました。
探してみましたが、automake1.13のmingw用が見つからず、断念しました。
fontconfig-2.10.93では手順どおりにできました。
よく分かっていませんが、最新過ぎてまだmingw用がないような感じでした。
情報ありがとうございます。
私の環境はautomake-1.11なのですが、問題なくmakeできました。
ちなみに、
MinGW
http://sourceforge.net/projects/mingw/files/MinGW/Extension/
MSYS
http://sourceforge.net/projects/mingw/files/MSYS/msysdev/
と2種類ありますが、私の環境では、automake、autoconfなどは、MSYS環境にインストールしています。
違いがあるとすれば、この辺りかもしれません。
また何か分かりましたら、お知らせします。
https://raw.githubusercontent.com/jburguete/MinGW-64-Make/master/fontconfig-2.11.0-undefined-_mm_mfence.patch
情報ありがとうございます。
パッチで
#include <emmintrin.h>
を追加してるのは、SSE2を有効にするとwarningが出るからでしょうかね。
最近パソコンを変えて、まだMinGW環境を作り直してないので試せないのですが、時間のあるときに試してみます。