TEO環境構築メモ (ソースからコンパイル)

最終更新:2004/9/21,文責:向川康博

はじめに

TEO環境は, 単一のパッケージをインストールすれば良いというわけではありませんので, 慣れていないと難しいかもしれません. TEOプロジェクトページから, 各種パッケージをダウンロードできますが, どれをインストールすればいいのかわかりにくいでしょう.

そこで,Vine Linux 2.6r4を例に,必要なパッケージをソースからコンパイルし, TEO環境を構築するまでの手順を紹介します. 他のディストリビューションであっても, UNIXであればほぼ同じ手順でインストールできると思います(FreeBSDでも). インストール後の個人の環境設定についても記述していますので, ぜひ参考にしてください.

【補足】

このTEO環境構築メモは,ソースからコンパイルする手順を説明していますが, 最近では Vine用のaptや,FedoraCore用のyumのリポジトリが用意されつつあり, 一発で環境を構築できるように作業が進められています.

必要なもの

TEO関連パッケージのうち,何が必要であるかは, 目的や個人の趣味に依存しますので一概には言えません. とりあえず,向川のお薦めパッケージは以下の通りです. その他のパッケージは,必要になってから入れればいいでしょう. では順に見て行きましょう.


libteo

まずは基幹ライブラリ libteoのインストールです. 今回は,TEOページから libteo-1.2.4.tar.gz をダウンロードしました.
% tar xvfz libteo-1.2.4.tar.gz
% cd libteo-1.2.4
% less README (一応,中身を確認しましょう)
% sh configure (いろいろとメッセージが表示されます)
% make
% su
Password: ぱこぱこ
# make install
# exit

以上でインストールは終了です. どういうファイルがインストールされたのか見てみましょう.
% ls /usr/local/lib/libteo*
/usr/local/lib/libteo.a
/usr/local/lib/libteo.so.1
/usr/local/lib/libteo.la
/usr/local/lib/libteo.so.1.0.4
/usr/local/lib/libteo.so

% ls /usr/local/include/teo*
/usr/local/include/teo.h  /usr/local/include/teo_debug.h

TEO関連のファイルがありますね. これで最低限の環境は整い,TEOのプログラミングができるようになりました.


libteo2gdk-pixbuf

後で述べる画像ビューア teoeyesをインストールするためには, 先に libteo2gdk-pixbufをインストールしておく必要があります. 今回は,TEOページから libteo2gdk-pixbuf-1.0.3.tar.gz をダウンロードしました.
% tar xvfz libteo2gdk-pixbuf-1.0.3.tar.gz
% cd libteo2gdk-pixbuf-1.0.3
% sh configure (いろいろとメッセージが表示されます)
% make
% su
Password: ぱこぱこ
# make install
# exit
以上でインストールは終了です. どういうファイルがインストールされたのか見てみましょう.
% ls /usr/local/lib/libteo2gdk_pixbuf*
/usr/local/lib/libteo2gdk_pixbuf.a
/usr/local/lib/libteo2gdk_pixbuf.so.1
/usr/local/lib/libteo2gdk_pixbuf.la
/usr/local/lib/libteo2gdk_pixbuf.so.1.0.2
/usr/local/lib/libteo2gdk_pixbuf.so

% ls /usr/local/include/teo2gdk-pixbuf.h 
/usr/local/include/teo2gdk-pixbuf.h

【補足】
もしも不幸にも,sh configureをして以下のよう怒られた場合は, pkg-configがインストールされていません.
checking for pkg-config... no
*** The pkg-config script could not be found. Make sure it is
*** in your path, or set the PKG_CONFIG environment variable
*** to the full path to pkg-config.
*** Or see http://www.freedesktop.org/software/pkgconfig to get pkg-config.
そのような場合には,pkg-configをインストールしてください. 詳しくは トラブルシューティングを参照.

teoeyes

teoeyesは TEO画像に対応した多機能画像ビューアです. teoeyesにはバージョン2系列と3系列があります. VineLinux2.6r4は古めなので,2系列を入れてみます. 今回は,TEOページから teoeyes-2.4.8.tar.bz2 をダウンロードしました.
% tar xvzf teoeyes-2.4.8.tar.bz2
% cd teoeyes-2.4.8
% sh configure (いろいろとメッセージが表示されます)
% make
% su
Password: ぱこぱこ
# make install
# exit
これで teoeyesがインストールされました.例しに起動してみましょう.
% /usr/local/bin/teoeyes
としてウィンドゥが開けばOKです. /usr/local/bin/にパスを通しておくと便利ですね. これはあとで説明します.


libteoutil

次にユーティリティライブラリのインストールです. 実は私がちゃんと管理していなかったために,同名の派生品が多数ありますが, TEOプロジェクトで公開されているものが公式なライブラリです. 今回は,TEOページから libteoutil-v1.0.tgz をダウンロードしました. シンプルなので,configureを使いません.
% tar xvfz libteoutil-v1.0.tgz
% cd libteoutil-v1.0
% make
% su
Password: ぱこぱこ
# make install
# exit
これで libteoutilのインストールは終了しました. ドキュメントはパッケージに含まれています. テキストファイルですので,以下のようにして見てください.
% less DOCUMENT 


libteopp

最後に,C++用ライブラリです. C++を使わない場合にも, 下記のTEOtoolsをインストールする場合に必要となりますので, ぜひ入れておきましょう. 今回は,TEOページから libteopp-2.3.tar.gz をダウンロードしました.
% tar xvfz libteopp-2.3.tar.gz 
% cd libteopp-2.3
% sh configure (いろいろとメッセージが表示されます)
% make
% su
Password:  ぱこぱこ
# make install
# exit
これで,libteoppがインストールされました.


TEOtools

今までのライブラリとは違い,これは実行バイナリ集です. バージョンアップが盛んですが,近日中に大きく構造が変わると予想されますので, ドキュメントもそれにあわせて説明します. しばらくお待ち下さい.

環境設定

特に設定しなくても,TEOを使うことはできますが, 以下のように環境変数を定義しておくと幸せになるでしょう.

例えば,tcsh(csh)系のユーザであれば, ~/.tcshrc (あるいは ~/.cshrc)に以下のように書きます.

setenv PATH ${PATH}:/usr/local/bin                       # 実行パス
setenv LD_LIBRARY_PATH ${LD_LIBRARY_PATH}:/usr/local/lib # ライブラリパス
setenv TEO_GZIP yes                                      # ファイルを圧縮するか
setenv TEO_USE_POPEN no                                  # 
setenv TEO_TMP "/tmp"                                    # 作業ディレクトリ
setenv TEO_GZIP_COMMAND "/bin/gzip -c"                   # 圧縮に用いるコマンド
setenv TEO_GUNZIP_COMMAND "/bin/gunzip -dc"              # 伸長に用いるコマンド

bash(sh)系のユーザであれば, ~/.bashrc (あるいは .shrc)に以下のように書きます.

PATH=${PATH}:/usr/local/bin;                       export PATH
LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/usr/local/lib; export LD_LIBRARY_PATH
TEO_GZIP=yes;                                      export TEO_GZIP
TEO_USE_POPEN=no;                                  export TEO_USE_POPEN
TEO_TMP="/tmp";                                    export TEO_TMP
TEO_GZIP_COMMAND="/bin/gzip -c";                   export TEO_GZIP_COMMAND
TEO_GUNZIP_COMMAND="/bin/gunzip -dc";              export TEO_GUNZIP_COMMAND
具体的に,各環境変数には以下のような意味があります.
■ PATH
実行パスです./usr/local/bin を付け加えてください.

■ LD_LIBRARY_PATH
シェアードライブラリのありかを書きます. /usr/local/lib を付け加えてください.

■ TEO_GZIP
TEO画像を gzipで圧縮するかどうかを指定します.yes/noのいずれかです.

■ TEO_USE_POPEN
popenを使うかどうかを指定します.yes/noのいずれかです.

■ TEO_TMP
TEO画像の圧縮/展開のために一時ファイルを置く場所です.

■ TEO_GZIP_COMMAND
TEO画像の圧縮に用いるコマンドです.

■ TEO_GUNZIP_COMMAND
TEO画像の展開に用いるコマンドです.


トラブルシューティング

pkg-configがインストールされていないケース

libteo2gdk-pixbufをインストールするためには, pkg-configがインストールされていなければなりません. Vine2.6r4 の場合は,plusパッケージに入っていますので, /etc/apt/sources.list のうち, 「plus」が含まれている適当なサイトのコメントアウトを外して (行頭の#を消して)おいて下さい. そうすれば,apt-getで以下のように簡単にインストールします
% su
Password: ぱこぱこ
# apt-get update
  <いろいろメッセージ>
# apt-get install pkgconfig
パッケージリストを読みこんでいます... 完了
依存情報ツリーを作成しています... 完了    
以下のパッケージが新たにインストールされます:
  pkgconfig 
0 個のアップグレードパッケージ, 1 個の新規パッケージ, 0 個の削除/リプレー
スパッケージ, 3 個の保留パッケージがあります。
取得パッケージ: 45.0kB のアーカイブを取得します。インストール後は 98.2kB
が使用されます。
取得:1 http://www.ring.gr.jp 2.6/i386/plus pkgconfig 1:0.15.0-0vl0
[45.0kB]
取得完了: 45.0kB を 0s (132kB/秒)
RPM コマンドを実行しています (-U)...
pkgconfig
##################################################
pkg-configがインストールされたら, libteo2gdk-pixbufのインストールを sh configureからやり直してみてください.