Stow によるパッケージ管理
rpm や apt などの独自のパッケージ管理機構を持たない Linux OS を使っている時はもちろんのこと、そのような独自のパッケージ管理機構を持つ Linux OS を使っている時でもパッケージを tar ボールなどのソースからインストールするという機会はよくあると思います。例えば、新しいバージョンのパッケージを試したいが、まだ自分の使っているディストリビューション用のパッケージが用意されていない時などです。
そういった tar ボール型のパッケージも rpm や apt などのパッケージ管理システムでするのと同様に管理したい時 (例えばパッケージのアップグレードや削除など) に便利なのが Stow です。ダウンロードは GNU のサイトからできます。1.3.3 が出たのがかなり前 (2002 年 1 月) なので有名なツールなのかも知れませんが、私は最近知りました。ちなみに、”stow” という単語は「しまい込む、詰め込む」という意味です。
まず stow をインストールします。今回は /usr/local/stow 下にインストールしました。
$ tar xvfz stow-1.3.3.tar.gz $ cd stow-1.3.3 $ ./configure $ make $ sudo make install
ここでは例として、autoconf-2.63.tar.gz を Stow に入れてインストールします (autoconf のインストールに必要な awk, perl, m4 などはインストール済みとします)。
$ tar xvfz autoconf-2.63.tar.gz $ cd autoconf-2.63 $ ./configure --prefix=/usr/local/stow/autoconf-2.63 $ make $ sudo make install
次に、Stow を利用して autoconf-2.63 に対応するシンボリックリンクを /usr/local/bin に作成します。これにより、autoconf 2.63 を利用できるようになります。
$ cd /usr/local/stow/autoconf-2.63 $ sudo stow -t /usr/local/bin/ bin $ ls -ltr /usr/local/bin lrwxrwxrwx 1 root root 33 2009-03-21 15:05 ifnames -> ../stow/autoconf-2.63/bin/ifnames lrwxrwxrwx 1 root root 36 2009-03-21 15:05 autoupdate -> ../stow/autoconf-2.63/bin/autoupdate lrwxrwxrwx 1 root root 34 2009-03-21 15:05 autoscan -> ../stow/autoconf-2.63/bin/autoscan lrwxrwxrwx 1 root root 36 2009-03-21 15:05 autoreconf -> ../stow/autoconf-2.63/bin/autoreconf lrwxrwxrwx 1 root root 34 2009-03-21 15:05 autom4te -> ../stow/autoconf-2.63/bin/autom4te lrwxrwxrwx 1 root root 36 2009-03-21 15:05 autoheader -> ../stow/autoconf-2.63/bin/autoheader lrwxrwxrwx 1 root root 34 2009-03-21 15:05 autoconf -> ../stow/autoconf-2.63/bin/autoconf $ which autoconf /usr/local/bin/autoconf $ autoconf -V autoconf (GNU Autoconf) 2.63 Copyright (C) 2008 Free Software Foundation, Inc. (以下、略)
参考にしたサイトを以下にメモしておきます。2 番目のサイトがよくまとまっています。