Hatena::Groupmoz-addon

Ci.nsIZIGOROu

2007-09-28

cairoをSVG対応でcygwinでビルドしようとして失敗したメモ

| 05:31 |  [http://cairographics.org/:title=cairo]をSVG対応でcygwinでビルドしようとして失敗したメモ - Ci.nsIZIGOROu を含むブックマーク はてなブックマーク -  [http://cairographics.org/:title=cairo]をSVG対応でcygwinでビルドしようとして失敗したメモ - Ci.nsIZIGOROu

どうもcygwinのpackageに入ってるcairoだとsvg surfaceってのが有効になってないようなので、自分でやってみたいと思って挑戦して挫折しました(ぇ

ま、一応メモ。

ダウンロード

どうもcvsはもう使われないようでして、git使うみたいです。

gitとかcogitoとかはcygwinのpackageに入ってるので、それを使います。

でcairoなんですけども、この辺りでWeb上から最新のソースを閲覧出来ます。

$ cd /path/to/cairo
$ git clone git://anongit.freedesktop.org/git/cairo

こんな感じでソースがダウンロードできます。

ただどうもpixmanと言うライブラリが必要なようなので、そちらもgitで落とせるので、同様に。

$ cd /path/to/cairo
$ git clone git://anongit.freedesktop.org/git/pixman

pixmanのビルド

$ cd /path/to/cairo/pixman
$ ./autogen.sh
$ ./configure --prefix=/usr
$ vi pixman/Makefile

として、

*** Makefile.orig       Sat Sep 29 05:13:05 2007
--- Makefile    Sat Sep 29 04:47:16 2007
***************
*** 210,212 ****
  lib_LTLIBRARIES = libpixman-1.la
! libpixman_1_la_LDFLAGS = -version-info $(LT_VERSION_INFO) -no-undefined
  libpixman_1_la_LIBADD =  -lm $(am__append_1)
--- 210,212 ----
  lib_LTLIBRARIES = libpixman-1.la
! libpixman_1_la_LDFLAGS = -version-info $(LT_VERSION_INFO)
  libpixman_1_la_LIBADD =  -lm $(am__append_1)

のようにlibtoolのflagをダイレクトにつけないとlibpixman.dllが出来ないみたいです。*1

$ make
$ make check
$ make install

これでインストール出来るはず。

cairoのインストール

$ cd /path/to/cairo/cairo
$ ./autogen.sh
$ ./configure --prefix /usr

ここでsvgのサポートはonになってる表示が最終的に出ると思うんですが、この後にmake, make checkとやると散々テストでコケてるのが分かります。無理やりinstallしても良いのですが、例えばperlのCairoモジュールをインストールしようとしてもテストでコケます。

うーん。。。

後日談

ビルドできたお。