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 | このブログの読者になる | 更新情報をチェックする

2009年02月28日

プロプライエタリドライバ

サブOSとしてインストールしてあった「Open SUSE 11.1 x86_64」で、いつのまにかBlenderが起動しなくなっていました。
元々ビデオカードのドライバのインストールがうまくいかない状態だったのですが、もう一度ドライバをインストールし直そうと思いじっているうちに、X Window自体がまともに立ち上がらなくなり、修復をあきらめました。

私の使用しているPCにはATI(AMD)のRADEON HD4670というビデオカードを付けてあります。
Blenderを使用するにはnVidiaのビデオカードの方がいいというのは知っていたのですが、昨年秋の購入当時は最も新しいビデオカードで値段の割に性能がいいと評判だったため、ちょっと冒険してATIのビデオカードを買ってみました。
ちなみに、その前に使っていたのはnVidia Geforce7600GSのファンレスタイプで、PCショップで購入したショップブランドのPCに付属していたものです。

このATIのビデオカード、Windowsで使っている分にはそれほど気になることもなく普通に使えていたのですが、Linuxをインストールするとなると、新しいというのはかえって問題が起こる原因になったりします。

私は64bit版のLinuxを試そうと決めた後、最新バージョンのUbuntu8.10、Open SUSE11.1、Fedora10の3種類のディストリビューションでインストールを試しています。
Linuxでは最近はLive CDというタイプのインストールディスクを使うと、ハードディスクに一切インストールしない状態で一通りの機能を使用できるようになっています。
Fedora10では、このLive CDを使う事自体ができませんでした。
Ubuntu8.10ではLive CDは普通に使えたのですが、そこからインストールをしようとすると、途中で失敗しています。
Open SUSE 11.1はLive CDからインストールまで普通に実行できました。

Linuxの場合、ビデオカードのドライバはnVidiaやATIなどのメーカーが用意しているもの以外に、オープンソースとして開発されているドライバがあり、むしろそちらが標準のものとしてLinuxのディストリビューションに付属しています。
プロプライエタリドライバという言葉はWindowsだけを使用しているとあまり聞き慣れない言葉かもしれませんが、Linuxの世界ではオープンソースではないメーカー製のドライバを指して日常的に使われています。

普通にLinuxをインストールした状態では、そちらのオープンソースのドライバが使われるようになっていますが、OpenGLのハードウェアアクセラレーション機能などには多くの場合対応していません。
Live CDで普通にインストールまでできたOpen SUSEでは、ATIのメーカー製のドライバをインストールしようとするとエラーが起こって失敗します。エラーの内容はカーネルモジュールのコンパイルに失敗するというような感じなのですが、Linuxの初心者にはちょっと難しい問題です。

一方、Ubuntuでは一つ前のバージョン8.04ではLive CDを使ってインストールするところまで問題なく実行できて、さらにATIのメーカー製のドライバも普通にインストールできていました。新しいバージョンのものも、インストールさえできればメーカー製のドライバをインストールすることができるのではと思えます。
そして、Ubuntuにはそれを見越したかのように「alternate installer」というインストールCDが用意されています。
私が現在使用しているUbuntuは、その「alternate installer」を使ってインストールした後で、ATIのメーカー製ドライバをインストールしてあります。

復旧をあきらめたOpen SUSEを消して、後に何を入れるかまだ色々試しているところです。
この春にはUbuntu、Fedoraの新バージョンが出るようなので、それらのアルファ版も試してみましたが、どちらもATIのメーカー製ドライバを動かすことができませんでした。
とりあえずUbuntuの32bit版とかを入れておけば、64bit版と色々動作の比較をしたりできるかと思い、KubuntuというKDEデスクトップのもので32bit版をインストールしましたが、 ATIのドライバを入れると起動直後にフリーズしてしまいました。
この空いたパーティション、しばらく放置しそうな気がします...。
posted by mato at 02:24| Comment(0) | Linux | このブログの読者になる | 更新情報をチェックする

2009年02月16日

64bitコンピュータ環境への移行

これまで「Windows Vista Home Premium」の32bit版を使っていましたが、昨年末にハードディスクを増設したのをきっかけにして、OSを64bit対応のものに移行することを考えはじめました。
まずは、最近公開されたWindows7のBeta版 64bitを、さらに、LinuxのUbuntu8.10 amd_64版(Gnome)とOpen SUSE 11.1 x86_64版(KDE)をインストールしてみました。

私は以前、Linuxのインストールをしていたときに間違ってパーティションをまるごと消してしまったことがあり、それ以来Windowsとのデュアルブートはしないようにしていました。Vmwareなどの仮想環境を使って安全に使うこともできるのですが、今回は
・PCのメモリを32bit環境の使用限界より上の6GBまで増設した
・グラフィックボードのドライバがどの程度対応しているかを確認したい
ということもあって、直接ハードディスク上にインストールしています。

現在、私のPCには250GB、320GB、640GBのSATAと120GBのIDEのハードディスクが搭載してあり、それぞれのディスクにOSが一つずつインストールしてあるという状態になっています。
このような状態で、普段はWindows Vista 32bit版を使いながら、Windows7とLinuxそれぞれの64bit版を少しずつ試しています。

もし可能であればLinuxをメインとして使うようにして、Windowsは動作確認などのときだけ使用するという感じにできればと思っていますが、私の今の技術力では何かトラブルがあったときに自力で復旧できるかちょっと不安というのが正直なところです。
実際、Vmwareで使用していたLinuxでバージョンアップをしたら、うまく起動できなくなったということが何度かあります。

Windows7が正式版として発売される頃までに、なんとかスキルアップしてLinuxをメインのOSとして使っていけるようにしたいです。(ちなみに、この記事はUbuntuのFireFoxで書いています)
posted by mato at 02:04| Comment(0) | Linux | このブログの読者になる | 更新情報をチェックする
×

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