Index > Subversionをソースからインストールする
Mon, February 13, 2006

{update:2006-06-17}

Subversionをソースからインストールする

0からSubversion+Apache+BerkeleyDBを入れる。
実際にやってみるとそれほど難しいわけではない。

subversion downloads

db

tar xfz db-4.3.29.NC.tar.gz
cd db-4.3.29.NC
cd build_unix
 ../dist/configure --prefix=$HOME/local/db-4.3.29

make
make install

cd $HOME/local
ln -s db-4.3.29 db

apache

export LD_LIBRARY_PATH=/home/moca/local/db-4.3.29/lib 

./configure --enable-so=yes 
      --prefix=$HOME/local/httpd-2.0.55 
      --enable-dav=yes 
      --with-berkeley-db=$HOME/local/db-4.3.29

make 
make install

※ export LDLIBRARYPATH をしないといけない点に注意。

httpd実行ファイルが新しいDBライブラリを参照しているか確認。

ldd ~/local/httpd-2.0.55/bin/httpd 
        libaprutil-0.so.0 => /home/moca/local/httpd-2.0.55/lib/libaprutil-0.so.0 (0x40013000)
        libgdbm.so.2 => /usr/lib/libgdbm.so.2 (0x4002e000)
        libdb-4.3.so => /home/moca/local/db-4.3.29/lib/libdb-4.3.so (0x40035000)
        libexpat.so.0 => /usr/lib/libexpat.so.0 (0x400e5000)
        libapr-0.so.0 => /home/moca/local/httpd-2.0.55/lib/libapr-0.so.0 (0x40105000)
        librt.so.1 => /lib/librt.so.1 (0x40123000)
        libm.so.6 => /lib/libm.so.6 (0x40135000)
        libcrypt.so.1 => /lib/libcrypt.so.1 (0x40158000)
        libnsl.so.1 => /lib/libnsl.so.1 (0x40184000)
        libpthread.so.0 => /lib/libpthread.so.0 (0x40196000)
        libdl.so.2 => /lib/libdl.so.2 (0x401e7000)
        libc.so.6 => /lib/libc.so.6 (0x401ea000)
        /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)

Subversion

export LD_LIBRARY_PATH=/home/moca/local/db-4.3.29/lib
 ./configure 
    --with-apxs=$HOME/local/httpd-2.0.55/bin/apxs
    --with-apr=$HOME/src/httpd-2.0.55/srclib/apr
    --with-apr-util=$HOME/src/httpd-2.0.55/srclib/apr-util
    --with-berkeley-db=$HOME/local/db-4.3.29 
    --prefix=$HOME/local/subversion-1.3.0

レポジトリの用意

htpassword

svnadmin create /home/foo/svn-repos
cd /home/foo/svn-repos/conf
htpasswd -c -m ./htpasswd hoge

Apacheの設定(VirtualHostとsubversion)

モジュール追加

conf/httpd.conf にて、Dynamic Shared Object Support の部分に 以下の二行を追加

LoadModule dav_svn_module     modules/mod_dav_svn.so
LoadModule authz_svn_module   modules/mod_authz_svn.so

レポジトリディレクトリの指定

さらに conf/httpd.conf に記述を追加

        <Location /svn-repos>
        DAV svn
        SVNPath /home/foo/svn-repos
        AuthType Basic
        AuthUserFile /home/foo/svn-repos/conf/htpasswd
        AuthName "Please enter your ID and password"
        Require valid-user
        </Location>

以上

 Twitter
follow me on Twitter
 Categories