F.Ko-Jiの「一秒後は未来」

CentOSにSubversion1.6をインストール

CentOSにSubversion1.6.12をインストールしたときのメモ。yumで入れると1.4しか入らないのでソースから入れます。CentOSのバージョンは5.5です。

mod_dav_svnのインストール

http経由で使うために mod_dav_svn を入れておきます。

$ sudo yum install mod_dav_svn

同時に subversion1.4 もインストールされますが構わず実行。

最初はsubversion1.6を入れたあとmod_dav_svnを入れたのですが、それだとApacheから利用されるSubversionが1.4になってしまい、最新バージョンのリポジトリが読み取れませんでした。なので先に入れておきます。

Subversionのインストール

何もない状態でインストールしているので失敗だらけですが、とりあえずやった通りにメモしておきます。

まずはソースを Apache Subversion から探してダウンロード、展開、./configureを実行します。

$ wget http://subversion.tigris.org/downloads/subversion-1.6.12.tar.gz
$ tar xvzf subversion-1.6.12.tar.gz
$ cd subversion-1.6.12
$ ./configure

...

checking for APR... no
configure: WARNING: APR not found

APR がないと言われたのでThe Apache Portable Runtime Projectからダウンロードして入れます。

$ wget http://ftp.riken.jp/net/apache/apr/apr-1.4.2.tar.gz
$ tar xvzf apr-1.4.2.tar.gz
$ cd apr-1.4.2
$ ./configure
$ make
$ sudo make install

apr-util も必要なのでインストール。

$ wget http://ftp.kddilabs.jp/infosystems/apache/apr/apr-util-1.3.9.tar.gz
$ tar xvzf apr-util-1.3.9.tar.gz 
$ cd apr-util-1.3.9
$ ./configure --with-apr=/usr/local/apr
$ make
$ sudo make install

再度 Subversion の ./configure を実行。

$ cd ../subversion-1.6.12
$ ./configure --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr

...

configure: checking sqlite library
amalgamation not found at /var/tmp/subversion-1.6.12/sqlite-amalgamation/sqlite3.c
checking sqlite3.h usability... no
checking sqlite3.h presence... no
checking for sqlite3.h... no


get the sqlite 3.6.13 amalgamation from:
    http://www.sqlite.org/sqlite-amalgamation-3.6.13.tar.gz
unpack the archive using tar/gunzip and copy sqlite3.c from the
resulting directory to:
/var/tmp/subversion-1.6.12/sqlite-amalgamation/sqlite3.c

という感じで sqlite が無いと言われたのでログにある通りに実行します。

$ wget http://www.sqlite.org/sqlite-amalgamation-3.6.13.tar.gz
$ tar xvzf sqlite-amalgamation-3.6.13.tar.gz 
$ mkdir subversion-1.6.12/sqlite-amalgamation
$ cp sqlite-3.6.13/sqlite3.c subversion-1.6.12/sqlite-amalgamation/

再度 ./configure を実行。

$ cd subversion-1.6.12
$ ./configure --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr

...

checking zlib.h usability... no
checking zlib.h presence... no
checking for zlib.h... no
configure: error: subversion requires zlib

zlibってのが入っていなかったので yum で入れます。

$ sudo yum -y install zlib-devel

もう一度。

$ ./configure --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr

ようやく ./configure が終了。次は make です。

$ make

...

/usr/bin/ld: cannot find -lexpat
collect2: ld returned 1 exit status
make: *** [subversion/svn/svn] Error 1

今度は lexpat というのが見当たらないということで、 expat を入れます。

$ wget http://downloads.sourceforge.net/project/expat/expat/2.0.1/expat-2.0.1.tar.gz?use_mirror=jaist&30517521
$ tar xvzf expat-2.0.1.tar.gz 
$ cd expat-2.0.1
$ ./configure
$ make
$ sudo make install

再度 make します。

$ cd ../subversion-1.6.12
$ make

うまくいきました。最後に、

$ sudo make install

でインストール完了です。

subversion.confの設定

mod_dav_svnを入れたときに /etc/httpd/conf.d/subversion.conf ができてるはずです。ここにHTTP経由でアクセスするための設定を書きます。

<Location /your/svn/path>
  DAV svn
  SVNParentPath /path/to/repository/parent

  AuthType Basic
  AuthName "Authorization Realm"
  AuthUserFile /path/to/.htpasswd
  Require valid-user
</Location>

ここの設定に関しては、ごった煮 – CentOS4/CentOS5導入記(覚え書き) – subversionの導入あたりが詳しいです。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

著者について

fkoji

F.Ko-Ji

Webエンジニアやってます。最近は ドットインストール の開発がお仕事です。その傍ら、個人で Meity電車遅延なう梅酒.in#グラドル自画撮り部 の部室といったネットサービスを開発・運営してます。梅酒と草野球とリアル脱出ゲームが好きです。

» 詳しいプロフィールや運営サービスの一覧など