このページは過去に掲載していたものをそのまま使用しています。

[ Parent Dir | Contents ]

DiaをSolarisで開発してみる

Javaをやる関係でSolarisをメインマシンに インストールしたまでは良かったのだが、ダイアグラムを書くツールに Diaを使おうとしたために、日本語版の開発をすることに…。

もくじ

gccはどこ?

たわけた事を言うまえに、Sunfreeware.comからgccを探して、前後にある説明文を読みましょう。

環境変数

まず"PATH"ですが、/usr/local/bin/usr/ccs/binなど よりも先にくるようにしてください。往々にしてgnu-make(FreeBSD的に言うとgmake) でないといけないアプリケーションの方が多いものです。

注意 ip_filのコンパイルでは/usr/ccs/binが先にないといけなかった 事を思い出してください。

次に"LD_LIBRARY_PATH"の説明。LD_LIBRARY_PATH=/usr/local/lib をしておかないとせっかくインストールしたライブラリ群も役に立たないので 気をつけましょう。説明はman ldもしくは Solarsiアンサーブック2で参照してください。

必要な(?)ライブラリをインストールしよう

glib, gtk+-1.2.6とかimlibとかインストールしなければいけないのは わかっているのですが、全部の説明はどっかのインストール手順を書いた Webページにまかせましょう。

特にSolarisで、というわけではありませんが、注意しなければいけない 部分について説明します。

gd-1.7.3

すっかり有名になってしまったGDライブラリですが、出始めの頃は それほど使われるという事はなかったように記憶しています。PHP-2.0に 使われるようになってから、徐々に知名度を上げていったのではないでしょうか。

さて、日本語に対応したGDライブラリを使うためには、freetype-1.x ライブラリが必要です。Solarisでも、このインストールはそれほど難しくありません。 configure ; make ; sudo make install ぐらいで十分です。

GDライブラリの説明書にはどこにも書かれていませんが、cppに対して "JISX0208"を定義してあげないと日本語対応アプリケーションをコンパイル できないので、これを追加してあげます。

/** in Makefile **/
#If you do have FreeType and/or Xpm fully installed, uncomment a
#variation of this and comment out the line above. See also LIBS below.
CFLAGS=-O -DHAVE_XPM -DHAVE_LIBTTF -DJISX0208

たったこれだけの事なんですが、PHP-3.0.14などのコンパイル方法について 説明されたページには当然のように書かれています。でも附属のドキュメントには 「日本語サポートされたよ」としか書いてない…。configureスクリプトは確かに 過剰サービスだとは思うけれど、せめてしっかり書いてほしかったな。

ORbit-0.50

ひょっとしたら、ついでにgnome-libなんかも一緒に入れようとしている 人がいるかもしれません。ORbitをコンパイルするときには/usr/ccs/bin に先にパスを通していた場合に原因の特定が困難なエラーに悩まされました。 一晩たって、export PATH=/usr/local/bin:$PATHなんてやったら すぐに通るんだから、そういう事もあるって覚えておくといいかもしれません。

それいがい

さて、DiaのINSTALLドキュメントにはglib, gtk+, libxml, imlibといった 必要なライブラリが列挙されています。DebianやRedHatなどには最初から こういったパッケージが必要な他のグラフィックライブラリなんかと一緒に 入っています。でもSolarisではそうもいかないですよね。

そこで、Sunfreeware.com をまず見て、すでにコンパイルされているライブラリをチェックしておきましょう。 Xpmなどは自分でコンパイルすると骨が折れるので、ここから取っておくと便利です。

その他のライブラリも自分で探すのが面倒な場合はFreeBSDのミラーサイトの FreeBSD/distfiles/を知っていると比較的新しいsourceが手に入ります。

Diaのコンパイル

比較的


Yasuhiro Abe <m5031201@u-aizu.ac.jp>
Last modified: Sun Nov 5 18:45:12 2000