2009年03月04日

AGG SVG Viewer

vectexの話題の続きです。
vectexのソースコードをダウンロードすると、その中に「agg-2.5」「expat-1.95.8」というフォルダがあります。
pic090304_01.jpg

vectexのReadmeを読んでみると、このプラグインの作者 mgmalheirosさんは、オープンソースの2D描画ライブラリ「AGG」に付属しているSVGビュワーを元にして、このプラグインを作成したようです。
AGG」というのは「Anti-Grain Geometry」というのが正式名称で、Maxim Shemanarevさんという方が作られています。このサイトのトップページのメニューに「SVG Viewer」という項目があり、そこにこのライブラリを使ったSVG ViewerのWindows版ファイルとサンプルのSVGグラフィックがダウンロードできます。
pic090304_04.jpg

サンプルというだけあって、SVGファイル名を引数として指定してコマンドラインから実行するという使用方法になっています。
コマンドラインからの実行ということでちょっと面倒ですが、あるSVGファイルがBlenderのvectexプラグインで使えるかどうかを調べるのに使えそうです。
pic090304_02.jpg

ただ、なぜかLinux版の実行ファイルはダウンロードできるようになっていません。ソースコードから自分でコンパイルしてくださいということらしいです。基本的には「make」コマンドを使うだけなのですが、私がこのSVG_Viewerをコンパイルするまでにちょっととまどう部分がありましたので、少しその手順を説明したいと思います。

svg_viewerのソースファイルは「agg-2.5」フォルダの中の「examples」フォルダの中の「svg_viewer」というフォルダの中にあります。フォルダの中を見てみると、普通ならあるはずの「Makefile」が見当たりません。
pic090304_03.jpg

他のサンプルファイルは「examples」の中の「X11」フォルダにある「Makefile」を使ってまとめてコンパイルすることができましたが、その中にSVG Viewerはみつかりません。これは、もしかして自分で「Makefile」を作れということなのかと思って、しばらく悩みました。

結果的には「agg-2.5」フォルダのreadmeファイルをよく見ると、そこにコンパイルの仕方が書かれていました。
実は他のサンプルファイルと同じく「X11」フォルダにある「Makefile」に、SVG Viewerのための記述も書かれているのですが、SVG Viewerは他のライブラリ(freetype,expat)に依存しているためデフォルトではコンパイルされないようになっているそうです。
Ubuntuのパッケージマネージャ「Synaptic」で確認すると、私の環境ではどちらもインストール済みでしたので、そのままでコンパイルできそうです。SVG Viewerをコンパイルするには、端末ウィンドウで「exapmles」-「X11」に移動して、

$ make svg_test


と入力するだけです。
ちなみに、makeの後に指定しているのは、すべてをコンパイルするときに指定する「all」、makeで作成されたオブジェクトファイルなどを削除する「clean」などと同じ「ターゲット」というものです。「Makefile」の中でSVG Viewerに関する記述が「svg_test」というターゲットの下に書かれているので、この名前を指定することでmakeコマンドにSVG Viewerをコンパイルさせることができるということです。

Linuxでプログラミングをする場合、makeコマンドの動作の仕組みとかをある程度知っていないといけないようです。
※追記
「Makefile」について「make」コマンドとまぎらわしい記述になっていたのを修正しました。
posted by mato at 03:20| Comment(0) | Linux | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。
×

この広告は1年以上新しい記事の投稿がないブログに表示されております。