32nd Diary

トップ | 最新 | 過去の日記 | もっと過去の日記

2006年
11月
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30
めーるあどれす
ruby -rbase64 -e'puts Base64.decode64 %q(dGFrYW5vMzJAZ21haWwuY29t)'



2006-11-15 (Wednesday) [長年日記]

[VMware][Life] VMware病

普通のターミナルで作業を終了したときに Ctrl + Alt を押してしまう...

[Linux][UNIX] stowを使ってtar玉をパッケージ風に管理する

GNU Stow を使えば tar玉のアーカイブをパッケージ風に扱うことができる. 以下ではstow自身をstowの機能を利用して,ホームディレクトリにインストールする方法について説明しよう.

環境変数の設定

まず,ホームディレクトリの local ディレクトリ以下でstowによる管理をすることを考え,以下のような環境変数を設定する.

# stow
export PATH=$HOME/local/bin:$PATH
export MANPATH=$HOME/local/man:$MANPATH
export LD_LIBRARY_PATH=$HOME/local/lib:$LD_LIBRARY_PATH

この設定では $HOME/local/stow へさまざまなアプリケーションの実体をインストールし,stowを使って $HOME/local 以下に実体へのリンクを張る.

実体のインストール

次に,stowをコンパイルして, $HOME/local/stow/stow-1.3.3 にインストールする.

cd $HOME/tmp
wget ftp://ftp.ring.gr.jp/pub/GNU/stow/stow-1.3.3.tar.gz
tar zxvf stow-1.3.3.tar.gz
cd stow-1.3.3
./configure --prefix=$HOME/local/stow/stow-1.3.3
make
make install

インストール先はmakeのprefixオプションで指定することもできるが,configureの方が対応しているアーカイブが多いのでそちらを使用することにする.

リンクの作成

インストールが終了したらstowコマンドを使い $HOME/local/stow/stow-1.3.3 以下の実体から $HOME/local 以下にリンクを張る.

cd $HOME/local/stow
./stow-1.3.3/bin/stow stow-1.3.3

stowコマンドは -t オプションでインストール先のディレクトリを指定できる. 特に指定がない場合はインストールの対象があるディレクトリの親ディレクトリとなる.

これで $HOME/local 以下に stow のリンクが作成され,パスを通した環境では簡単にstowコマンドを呼び出すことができる.

パッケージの削除

念のため,削除の確認とリンクの再作成をしてみた.

cd $HOME/local/stow
stow -D stow-1.3.3
./stow-1.3.3/bin/stow  stow-1.3.3

stow -D した段階で $HOME/local 以下からきれいにstowがアンインストールされている様子が確認できた.

まとめ

stowによってtar玉をパッケージのように扱うことが可能になった. $HOME/local/stow に移動することで stow による管理モードに入るようなイメージがあると管理しやすいだろう. また,stow を使えば make uninstall などを使わなくてもキレイに消せるため, configure 済みのソースを保管しておく必要がない. 複数のバージョンをインストールしてリンクを張り替えることで切り替えることもでき,いろいろなバージョンをインストールして実験するときにも便利だろう.

参考

[Linux] stowによるQDBMのインストール

stowによるQDBMのインストールについてのメモを残しておこう.

tar zxvf qdbm-1.8.74.tar.gz
cd qdbm-1.8.74
./configure --enable-zlib --prefix=$HOME/local/stow/qdbm-1.8.74
make
make install
cd $HOME/local/stow
stow qdbm-1.8.74

[Linux] stowによるHyperEstraierのインストール

stowによるHyperEstraierのインストールについてのメモを残しておこう.

tar zxvf hyperestraier-1.4.9.tar.gz
cd hyperestraier-1.4.9
./configure --enable-mecab --prefix=$HOME/local/stow/hyperestraier-1.4.9 LIBS="-L/home/takano32/local/lib"

Makefile から CPPFLAGS を探し, "-I$(HOME)/include" を "-I$(HOME)/local/include" に変更する.

make
make install
cd $HOME/local/stow
stow hyperestraier-1.4.9

まだアツイアプリケーションは古いバージョンもとっておき,随時切り替えられるようにしておくと便利だ.

本日のPingbacks(全0件)