エックスサーバーにSubversion(SVN)をインストール方法

エックスサーバーにSubversionをインストール

こちらではエックスサーバー(Xserver)にSubversion(SVN)をインストール手順について紹介しています。

エックスサーバーにSubversionをインストールには

知人にエックスサーバーにSubversionをインストールしてほしいと頼まれたので、やってみたところ意外と面倒だったのでメモしておきます。

バージョン管理といえばGitが人気で、今さらSubversionと思われるかもしれません。しかしプロジェクトによってはSubversionの方が向いていることもあります。

エックスサーバーでは管理権限がないのでyumが使えないため、自分でダウンロードしてインストールしなければなりません。

インストールするためにはエックスサーバーにSSH接続をする必要があります。

とりあえずSubversionをダウンロードしてインストールしようとしたところ、APR(Apache Portable Runtime)が無いのでエラーが出ました。

APRが無い

それでAPRをインストールしてからもう一度Subversionをインストールしようとしたところ、APRUTILとExpatが無くてエラーに。

APR-UTILが無い

順番にインストールしていったところ他にもLibxml2やPython、SQLiteなどもインストールが必要でした。

ちなみに、ヘテムルというレンタルサーバーならSubversionがすでにインストールされているので、すぐに使うことができます。

インストールの手順

最終的には以下のものをインストールしました。

インストールの手順

  1. APR
  2. Expat
  3. APR-UTIL
  4. Python
  5. Libxml2
  6. SQLite
  7. Subversion

それぞれのインストールについて順番に説明します。

インストールと作業用のフォルダを作成

インストール用のディレクトリoptと、作業用のディレクトリsvnfilesを作ります。

cd ~/
mkdir opt
mkdir svnfiles

APRのインストール

APRの最新版についてはこちらからダウンロードします。

http://ftp.jaist.ac.jp/pub/apache//apr/

APRをダウンロードし、展開します。

cd svnfiles
wget http://ftp.jaist.ac.jp/pub/apache//apr/apr-1.7.0.tar.gz
tar zxvf apr-1.7.0.tar.gz

ダウンロードしたファイルを展開するとapr-1.7.0というフォルダが作成されます。

apr-1.7.0に移動し、configureを実行します(インストールするフォルダを指定する)。

cd apr-1.7.0
./configure --prefix=/home/(サーバーID)/opt

(サーバーID)は、エックスサーバーのサーバーIDのことです。分からない場合は、エックスサーバーのサーバーパネルにログインすると確認できます。

コンパイルし、インストールします。

make
make install

Expatのインストール

Expatの最新版についてはこちらからダウンロードします。

https://jaist.dl.sourceforge.net/project/expat/expat/

Expatをダウンロードし、展開します。

cd ~/svnfiles
wget https://jaist.dl.sourceforge.net/project/expat/expat/2.2.10/expat-2.2.10.tar.gz
xz -dc expat-2.2.10.tar.xz | tar xfv -

ダウンロードしたファイルを展開するとexpat-2.2.10というフォルダが作成されます。

作成されたフォルダの中にあるexpat.hexpat_external.hは、APR-UTILをインストールするときにも使います。

expat-2.2.10に移動し、configureを実行します(インストールするフォルダを指定する)。

cd expat-2.2.10
./configure --prefix=/home/(サーバーID)/opt

コンパイルし、インストールします。

make
make install

APR-UTILのインストール

APR-UTILの最新版についてはこちらからダウンロードします。

http://ftp.jaist.ac.jp/pub/apache//apr/

APR-UTILをダウンロードし、展開します。

cd ~/svnfiles
wget http://ftp.jaist.ac.jp/pub/apache//apr/apr-util-1.6.1.tar.gz
tar zxvf apr-util-1.6.1.tar.gz

ダウンロードしたファイルを展開するとapr-util-1.6.1というフォルダが作成されます。

ここで先程のexpat.hexpat_external.hが必要になるので、コピーしてきます。

cp ~/svnfiles/expat-2.2.10/lib/expat.h ~/svnfiles/apr-util-1.6.1/include/expat.h
cp ~/svnfiles/expat-2.2.10/lib/expat_external.h ~/svnfiles/apr-util-1.6.1/include/expat_external.h

apr-util-1.6.1に移動し、configureを実行します。

cd apr-util-1.6.1
./configure --prefix=/home/(サーバーID)/opt --with-apr=/home/(サーバーID)/opt

コンパイルし、インストールします。

make
make install

Pythonのインストール

Pythonの最新版についてはこちらからダウンロードします。

https://www.python.org/downloads/source/

Pythonをダウンロードし、展開します。

cd svnfiles
wget https://www.python.org/ftp/python/3.9.2/Python-3.9.2.tar.xz
xz -dc Python-3.9.2.tar.xz | tar xfv -

ダウンロードしたファイルを展開するとPython-3.9.2というフォルダが作成されます。

Python-3.9.2に移動し、configureを実行します。

cd Python-3.9.2
./configure --prefix=/home/(サーバーID)/opt

コンパイルし、インストールします。

make
make install

Libxml2のインストール

Libxml2の最新版についてはこちらからダウンロードします。

http://www.linuxfromscratch.org/blfs/view/svn/general/libxml2.html

Libxml2をダウンロードし、展開します。

cd ~/svnfiles
wget http://xmlsoft.org/sources/libxml2-2.9.10.tar.gz
tar zxvf libxml2-2.9.10.tar.gz

ダウンロードしたファイルを展開するとlibxml2-2.9.10というフォルダが作成されます。

libxml2-2.9.10に移動し、configureを実行します。Libxml2のインストールにはPythonが必要です。

cd libxml2-2.9.10
./configure --prefix=/home/(サーバーID)/opt --with-python=/home/(サーバーID)/opt

コンパイルし、インストールします。

make
make install

Subversionのインストール

Subversionの最新版についてはこちらからダウンロードします。

http://ftp.meisei-u.ac.jp/mirror/apache/dist/subversion/

Subversionをダウンロードし、展開します。

cd ~/svnfiles
wget http://ftp.meisei-u.ac.jp/mirror/apache/dist/subversion/subversion-1.14.0.tar.gz
tar zxvf subversion-1.14.0.tar.gz

ダウンロードしたファイルを展開するとsubversion-1.14.0というフォルダが作成されます。

subversion-1.14.0に移動し、configureを実行します(インストールするフォルダを指定する)。

cd apr-1.7.0
./configure --prefix=/home/(サーバーID)/opt --with-apr=/home/(サーバーID)/opt --with-apr-util=/home/(サーバーID)/opt --with-expat=/home/(サーバーID)/opt/include:/home/(サーバーID)/opt/lib:expat --with-lz4=internal --with-utf8proc=internal

configureを実行すると、SQLiteがインストールされてないというメッセージが出ます。

SQLite

メッセージにSQLiteのダウンロード先が表示されているので、そこからダウンロードして展開します。

cd ..
wget https://www.sqlite.org/2015/sqlite-amalgamation-3081101.zip
unzip sqlite-amalgamation-3081101.zip

展開するとsqlite-amalgamation-3081101というフォルダが作成されます。

作成されたフォルダをsubversion-1.14.0に移動します。

mv sqlite-amalgamation-3081101 subversion-1.14.0/sqlite-amalgamation

subversion-1.14.0に移動し、configureを実行します(インストールするフォルダを指定する)。

cd subversion-1.14.0
./configure --prefix=/home/(サーバーID)/opt --with-apr=/home/(サーバーID)/opt --with-apr-util=/home/(サーバーID)/opt --with-expat=/home/(サーバーID)/opt/include:/home/(サーバーID)/opt/lib:expat --with-lz4=internal --with-utf8proc=internal

コンパイルし、インストールします。

make
make install

これでSubversionがインストールされました。

Subversionのパスを通す

~/opt/binにパスが通っていないときはパスを通します。

viで.bashrcを編集します。

vi ~/.bashrc

最後の行に以下のように追加します。

export PATH=$HOME/opt/bin:$PATH

.bashrcを保存し、読み直します。

source ~/.bashrc

Subversionのバージョンを表示して、インストールが成功しているか確かめます。

svn --version

インストールが成功していれば下の画像のようにバージョンが表示されます。

Subversionのバージョン

[prism]