Mac + Subversion + インストール
Mac Leopard に Subversion をインストールしたら意外と面倒だったのでメモ。
今回インストールしたのは、以下2つ。
subversion-1.5.1
subversion-deps-1.5.1
解凍して configure していざ make 。
$ cd /usr/local/src
$ tar zxvf subversion-1.5.1.tar.gz
$ tar zxvf subversion-deps-1.5.1.tar.gz
$ cd subversion-1.5.1
$ ./configure –-prefix=/usr/local/subversion-1.5.1 –-with-ssl –-without-berkely-db
$ make
ところが途中で、/usr/lib に libexpat.a がありませんというエラーが。
どうやら、expat という XML parser ライブラリの libexpat.a だけ /usr/lib にないらしい。
ないなら入れましょうと The Expat XML Parser から expat-2.0.1.tar.gz をダウンロード。
expat-2.0.1.tar.gz を解凍して、インストール。
その後、/usr/lib にシンボリックリンクを作成。
$ cd /usr/local/src
$ tar zxvf expat-2.0.1.tar.gz
$ cd expat-2.0.1
$ ./configure –-prefix=/usr/local/expat-2.0.1
$ make
$ sudo make install
$ cd /usr/local
$ sudo ln -s expat-2.0.1 expat
$ cd /usr/lib
$ sudo ln -s /usr/local/expat/lib/libexpat.a libexpat.a
これで Subversion の make が通るようになった。そのまま make install。
$ cd /usr/local/src/subversion-1.5.1
$ make
$ sudo make install
$ cd /usr/local
$ sudo ln -s subversion-1.5.1 svn
出来た、出来た。
さっそく.bash_profile を書き換えて新しい svn コマンドを使うように設定。
$ cd
$ vi .bash_profile
PATH=/usr/local/svn/bin:$PATH
export PATH=$PATH
$ source .bash_profile
続いて svn コマンドのチェック。svn –version とすると 1.5.1 と表示された。
どうやらうまくいったらしい。
続けて、すでに作っておいたリポジトリ(外部サーバ)に add してみる。
$ cd ~/Documents/repos
$ mkdir hoge
$ svn add hoge
$ svn commit hoge -m ‘add hoge’
add まではうまくいった模様。
けれど、commit で「認証機構と交渉できません」というエラーが・・・。
どうも 1.5 以降に追加された cyrus-sasl という認証関連が必要らしい。使う予定ないのに・・・。
必要ならいれましょう と Cyrus から cyrus-sasl-2.1.22.tar.gz をダウンロード。
cyrus-sasl-2.1.22.tar.gz を解凍して、インストール。
$ cd /usr/local/src
$ tar zxvf cyrus-sasl-2.1.22.tar.gz
$ cd cyrus-sasl-2.1.22
$ ./configure -–prefix=/usr/local/cyrus-sasl-2.1.22
$ make
$ sudo make install
$ cd /usr/local/
$ sudo ln -s cyrus-sasl-2.1.22 cyrus-sasl2
続いて subversion を再インストール。
$ cd /usr/local
$ sudo rm -r subversion-1.5.1
$ cd src/subversion-1.5.1
$ make clean
$ ./configure –-prefix=/usr/local/subversion-1.5.1 –-with-ssl –-with-sasl=/usr/local/cyrus-sasl2 –-without-berkely-db
$ make
$ sudo make install
これでもう一度試してみると今度は commit 成功!
意外と手間どったインストール作業だった。