Home > TANAKA BLOG > DreamHost に Trac をインストール

DreamHost に Trac をインストール

DreamHost に Trac をインストールしたときの手順を備忘録。

ネットからいろいろ情報を取得しつつやったんだけど、どういうわけかそのままコピペでできる手順がなかった。どうもあれやこれやとエラーになるんだよねぇ。

【参考】
http://www.oddwit.com/blog/2007/dreamhost-trac
http://natmaster.com/articles/installing_trac_0.10.php
などなど。



■準備


まずはディレクトリを作成。

$ cd ~/
$ mkdir install_files
$ mkdir packages
$ mkdir trac_sites


.bash_profile に必要な環境変数を記載。

$ vi .bash_profile
export PYTHONPATH="$HOME/packages/lib/python2.3/site-packages"
export LD_LIBRARY_PATH="$HOME/packages/lib"
export PATH="$HOME/packages/bin:$PATH"


.bash_profile を反映。

$ source ~/.bash_profile




■Clearsilver インストール


ちょっといろいろとエラーが起きがち。はまりましたが、下記の手順で行けました。

$ cd ~/install_files
$ wget http://www.clearsilver.net/downloads/clearsilver-0.10.5.tar.gz
$ tar zxvf clearsilver-0.10.5.tar.gz
$ cd clearsilver-0.10.5
$ sed -i "s@/usr/local/bin/python@/usr/bin/env python@g" \
scripts/document.py

$ PYTHON_SITE=`/home/{ユーザ名}/packages/bin/python -c \
"import sys; print [path for path in sys.path if \
path.find('site-packages') != -1][0]"` \
./configure --with-python=/home/{ユーザ名}/packages/bin/python \
--prefix=$HOME/packages \
--disable-ruby --disable-java --disable-apache --disable-csharp --disable-perl

上の手順で configure が走ります。

が、インストール状況によっては、下記の2ファイルを手で編集する必要があるかも。

もし、すでに /home/{ユーザ名}/packages/〜 が指定されていたら下記の編集は不要です。僕の場合はなぜかデフォルトの /usr/local/lib 以下にインストールしたがっていました。


$ vi config.status
509 #s,@PYTHON_SITE@,/usr/local/lib/python2.4/site-packages,;t t
510 s,@PYTHON_SITE@,/home/{ユーザ名}/packages/lib/python2.3/site-packages,;t t

$ vi rules.mk
66 #PYTHON_SITE = /usr/local/lib/python2.4/site-packages
67 PYTHON_SITE = /home/{ユーザ名}/packages/lib/python2.3/site-packages

で、make & make install

$ make
$ make install




■SQLite インストール



$ cd ~/install_files
$ wget http://www.sqlite.org/sqlite-3.5.2.tar.gz
$ tar zxvf sqlite-3.5.2.tar.gz
$ cd sqlite-3.5.2
$ ./configure --prefix=$HOME/packages
$ make
$ make install
$ ln -s $HOME/packages/bin/sqlite3 $HOME/packages/bin/sqlite




■pysqlite インストール



$ cd ~/install_files
$ wget http://initd.org/pub/software/pysqlite/releases/2.3/2.3.3/pysqlite-2.3.5.tar.gz
$ tar zxvf pysqlite-2.3.5.tar.gz
$ cd pysqlite-2.3.5

ここで、setup.py を編集します。

$ vi setup.py
36 #include_dirs = []
37 #library_dirs = []
38 include_dirs = ['/home/{ユーザ名}/packages/include']
39 library_dirs = ['/home/{ユーザ名}/packages/lib']


$ python setup.py build
$ python setup.py install --prefix=$HOME/packages




■SWIG インストール



$ cd ~/install_files
$ wget http://dl.sourceforge.net/sourceforge/swig/swig-1.3.32.tar.gz
$ tar zxvf swig-1.3.32.tar.gz
$ cd swig-1.3.32
$ ./configure --prefix=$HOME/packages --with-python=/usr/bin/python
$ make
$ make install




■neon インストール



$ cd ~/install_files
$ wget http://www.webdav.org/neon/neon-0.27.2.tar.gz
$ tar zxvf neon-0.27.2.tar.gz
$ cd neon-0.27.2
$ ./configure --prefix=$HOME/packages
$ make
$ make install




■SilverCity インストール



$ cd ~/install_files
$ wget http://jaist.dl.sourceforge.net/sourceforge/silvercity/SilverCity-0.9.7.tar.gz
$ tar zxvf SilverCity-0.9.7.tar.gz
$ cd SilverCity-0.9.7
$ python setup.py build
$ python setup.py install --prefix=$HOME/packages




■trac-ja インストール


今回は日本語版にしましたが、もちろん英語版でもOKで、ファイル名が異なるだけで手順は同じです。

$ cd ~/install_files
$ wget http://www.i-act.co.jp/project/products/downloads/trac-0.10.4-ja-1.zip
$ unzip trac-0.10.4-ja-1.zip
$ cd trac-0.10.4-ja-1
$ python setup.py build
$ python ./setup.py install --prefix=$HOME/packages




■autoconf インストール


ここがはまった。

Subversion をインストールするために、autoconf と libtool をインストールしておかなくちゃいけないのね。

$ cd ~/install_files
$ wget http://ftp.gnu.org/gnu/autoconf/autoconf-2.61.tar.gz
$ tar zxvf autoconf-2.61.tar.gz
$ cd autoconf-2.61
$ ./configure --prefix=$HOME/packages
$ make
$ make install




■libtool インストール



$ cd ~/install_files
$ wget http://ftp.gnu.org/gnu/libtool/libtool-1.5.24.tar.gz
$ tar zxvf libtool-1.5.24.tar.gz
$ cd libtool-1.5.24
$ ./configure --prefix=$HOME/packages
$ make
$ make install




■Subversion インストール


またはまりどころ。Subversion をインストールしようとすると、APR(Apache Portable Runtime)とAPR-Util というものが必要で、これらは依存関係にあります。

まずはSubversionのダウンロード。

$ cd ~/install_files
$ wget http://subversion.tigris.org/downloads/subversion-1.4.5.tar.gz
$ tar zxvf subversion-1.4.5.tar.gz
$ cd subversion-1.4.5

ここで、APRとAPR-Util をダウンロード。

$ svn co http://svn.apache.org/repos/asf/apr/apr/branches/0.9.x apr
$ svn co http://svn.apache.org/repos/asf/apr/apr-util/branches/0.9.x apr-util

APRとAPR-Util をインストール。

$ cd apr
$ ./buildconf --prefix=$HOME/packages
$ ./configure --prefix=$HOME/packages
$ make
$ make install
$ cd ../apr-util
$ ./buildconf --prefix=$HOME/packages
$ ./configure --prefix=$HOME/packages --with-apr=$HOME/packages --libdir=$HOME/packages/lib
$ make
$ make install

ここでようやくSubversion のインストールに戻る。

$ cd ../
$ ./configure PYTHON=/usr/bin/python --prefix=$HOME/packages \
--with-swig=$HOME/packages/bin/swig --without-berkeley-db \
--with-ssl --with-zlib \
--with-apr=$HOME/packages --with-apr-util=$HOME/packages \
--disable-neon-version-check

この configure の最後で、下記のエラーメッセージが出力される。

configure: WARNING: we have configured without BDB filesystem support

You don't seem to have Berkeley DB version 4.0.14 or newer
installed and linked to APR-UTIL. We have created Makefiles which
will build without the Berkeley DB back-end; your repositories will
use FSFS as the default back-end. You can find the latest version of
Berkeley DB here:
http://www.sleepycat.com/download/index.shtml

あのねぇ、WARNING にする必要がまったくないと思うんだけど。

だって、--without-nerkeley-db ってつけたでしょ、というのは海外の人も言っていた。NOTICE くらいにしておいて欲しいよね。びっくりしちゃう。

Subversion をFSFSで管理するなら、このメッセージは無視してOKです。(FSFSについてのわかりやすい説明はこちら

$ make
$ make install
$ make swig-py
$ make install-swig-py
$ cd ~/packages/lib/python2.3/site-packages
$ echo $HOME/packages/lib/svn-python > subversion.pth
$ ln -s ~/packages/lib/svn-python/libsvn
$ ln -s ~/packages/lib/svn-python/svn

そして、下記のコマンドでエラーメッセージが出力されなければOK。

$ python -c "from svn import client"




■Trac セットアップ


では、Trac のセットアップ。

$ trac-admin $HOME/trac_sites/{プロジェクトID} initenv
Project Name [My Project]> {プロジェクト名Enter}
Database connection string [sqlite:db/trac.db]> {Enter}
Repository type [svn]> {Enter}
Path to repository [/path/to/repos]> {リポジトリパスEnter}
Templates directory [/home/{ユーザ名}/packages/share/trac/templates]> {Enter}

index.cgi を作成。

$ cd ~/trac_sites/{プロジェクトID}/htdocs
$ vi index.cgi
#!/bin/bash
export HOME="/home/{ユーザ名}"
export TRAC_ENV="$HOME/trac_sites/{プロジェクトID}"
export PYTHONPATH="$HOME/packages/lib/python2.3/site-packages"
export PATH="$HOME/packages/bin:$PATH"
export LD_LIBRARY_PATH="$HOME/packages/lib"

exec $HOME/packages/share/trac/cgi-bin/trac.cgi

index.fcgi を作成。

$ vi index.fcgi
#!/bin/bash
export HOME="/home/{username}"
export TRAC_ENV="$HOME/trac_sites/{your trac project id}"
export PYTHONPATH="$HOME/packages/lib/python2.3/site-packages"
export PATH="$HOME/packages/bin:$PATH"
export LD_LIBRARY_PATH="$HOME/packages/lib"

exec $HOME/packages/share/trac/cgi-bin/trac.fcgi

パーミッションを変更。

$ chmod 775 index.cgi
$ chmod 775 index.fcgi

.htaccess を作成。

$ vi .htaccess
DirectoryIndex index.cgi

Options +FollowSymLinks

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ ./index.fcgi/$1 [L]

最後に、ドキュメントルートにリンクをはります。

$ ln -s $HOME/trac_sites/{プロジェクトID}/htdocs $HOME/{ドキュメントルート}

プロジェクトごとにディレクトリを分けたい場合は

$ ln -s $HOME/trac_sites/{プロジェクトID}/htdocs $HOME/{ドキュメントルート}/{プロジェクトID}

のようにすればよいですね。


これで、ブラウザでアクセスしてうまく表示されればOKでした。

テクノロジー|2007年 11月 21日| このエントリーを含むlivedoorクリップ このエントリーを含むはてなブックマーク del.icio.usへブックマーク Yahoo!ブックマークに登録


この記事へのコメント

コメントはまだありません。
%3c%61%20%69%64%3d%22%6e%75%63%6c%65%75%73%5f%63%66%22%3e%3c%2f%61%3e %3c%66%6f%72%6d%20%6d%65%74%68%6f%64%3d%22%70%6f%73%74%22%20%61%63%74%69%6f%6e%3d%22%23%6e%75%63%6c%65%75%73%5f%63%66%22%3e %09%3c%64%69%76%20%63%6c%61%73%73%3d%22%63%6f%6d%6d%65%6e%74%66%6f%72%6d%22%3e %3c%69%6e%70%75%74%20%74%79%70%65%3d%22%68%69%64%64%65%6e%22%20%6e%61%6d%65%3d%22%61%63%74%69%6f%6e%22%20%76%61%6c%75%65%3d%22%61%64%64%63%6f%6d%6d%65%6e%74%22%20%2f%3e %3c%69%6e%70%75%74%20%74%79%70%65%3d%22%68%69%64%64%65%6e%22%20%6e%61%6d%65%3d%22%75%72%6c%22%20%76%61%6c%75%65%3d%22%69%6e%64%65%78%2e%70%68%70%3f%69%74%65%6d%69%64%3d%36%34%36%22%20%2f%3e %3c%69%6e%70%75%74%20%74%79%70%65%3d%22%68%69%64%64%65%6e%22%20%6e%61%6d%65%3d%22%69%74%65%6d%69%64%22%20%76%61%6c%75%65%3d%22%36%34%36%22%20%2f%3e %09%09 %09%09%3c%6c%61%62%65%6c%20%66%6f%72%3d%22%6e%75%63%6c%65%75%73%5f%63%66%5f%62%6f%64%79%22%3eコメント%3a%3c%2f%6c%61%62%65%6c%3e %09%09%3c%74%65%78%74%61%72%65%61%20%6e%61%6d%65%3d%22%62%6f%64%79%22%20%63%6c%61%73%73%3d%22%66%6f%72%6d%66%69%65%6c%64%22%20%63%6f%6c%73%3d%22%34%30%22%20%72%6f%77%73%3d%22%31%30%22%20%69%64%3d%22%6e%75%63%6c%65%75%73%5f%63%66%5f%62%6f%64%79%22%3e%3c%2f%74%65%78%74%61%72%65%61%3e %09%09%3c%6c%61%62%65%6c%20%66%6f%72%3d%22%6e%75%63%6c%65%75%73%5f%63%66%5f%6e%61%6d%65%22%3eお名前%3a%3c%2f%6c%61%62%65%6c%3e %09%09%3c%69%6e%70%75%74%20%6e%61%6d%65%3d%22%75%73%65%72%22%20%73%69%7a%65%3d%22%34%30%22%20%6d%61%78%6c%65%6e%67%74%68%3d%22%34%30%22%20%76%61%6c%75%65%3d%22%22%20%63%6c%61%73%73%3d%22%66%6f%72%6d%66%69%65%6c%64%22%20%69%64%3d%22%6e%75%63%6c%65%75%73%5f%63%66%5f%6e%61%6d%65%22%20%2f%3e %09%09%3c%6c%61%62%65%6c%20%66%6f%72%3d%22%6e%75%63%6c%65%75%73%5f%63%66%5f%6d%61%69%6c%22%3eウェブサイト%3a%3c%2f%6c%61%62%65%6c%3e %09%09%3c%69%6e%70%75%74%20%6e%61%6d%65%3d%22%75%73%65%72%69%64%22%20%73%69%7a%65%3d%22%34%30%22%20%6d%61%78%6c%65%6e%67%74%68%3d%22%36%30%22%20%76%61%6c%75%65%3d%22%22%20%63%6c%61%73%73%3d%22%66%6f%72%6d%66%69%65%6c%64%22%20%69%64%3d%22%6e%75%63%6c%65%75%73%5f%63%66%5f%6d%61%69%6c%22%20%2f%3e %09%09%3c%6c%61%62%65%6c%20%66%6f%72%3d%22%6e%75%63%6c%65%75%73%5f%63%66%5f%65%6d%61%69%6c%22%3eメール%3a%3c%2f%6c%61%62%65%6c%3e %09%09%3c%69%6e%70%75%74%20%6e%61%6d%65%3d%22%65%6d%61%69%6c%22%20%73%69%7a%65%3d%22%34%30%22%20%6d%61%78%6c%65%6e%67%74%68%3d%22%31%30%30%22%20%76%61%6c%75%65%3d%22%22%20%63%6c%61%73%73%3d%22%66%6f%72%6d%66%69%65%6c%64%22%20%69%64%3d%22%6e%75%63%6c%65%75%73%5f%63%66%5f%65%6d%61%69%6c%22%20%2f%3e %09%09%3c%62%72%20%2f%3e%3c%69%6e%70%75%74%20%74%79%70%65%3d%22%63%68%65%63%6b%62%6f%78%22%20%6e%61%6d%65%3d%22%6e%6f%74%73%70%61%6d%22%20%76%61%6c%75%65%3d%22%36%34%36%22%20%69%64%3d%22%6e%75%63%6c%65%75%73%5f%63%66%5f%73%70%61%6d%22%20%2f%3e%3c%6c%61%62%65%6c%20%66%6f%72%3d%22%6e%75%63%6c%65%75%73%5f%63%66%5f%73%70%61%6d%22%3eチェックしてください(スパム対策のため)%3c%2f%6c%61%62%65%6c%3e %3c%69%6e%70%75%74%20%74%79%70%65%3d%22%68%69%64%64%65%6e%22%20%6e%61%6d%65%3d%22%74%69%6d%65%72%22%20%76%61%6c%75%65%3d%22%31%32%38%33%35%36%33%31%30%37%22%20%69%64%3d%22%6e%75%63%6c%65%75%73%5f%63%66%5f%74%69%6d%65%72%22%20%2f%3e %09%09%3c%69%6e%70%75%74%20%74%79%70%65%3d%22%63%68%65%63%6b%62%6f%78%22%20%76%61%6c%75%65%3d%22%31%22%20%6e%61%6d%65%3d%22%72%65%6d%65%6d%62%65%72%22%20%69%64%3d%22%6e%75%63%6c%65%75%73%5f%63%66%5f%72%65%6d%65%6d%62%65%72%22%20%20%2f%3e %09%09%3c%6c%61%62%65%6c%20%66%6f%72%3d%22%6e%75%63%6c%65%75%73%5f%63%66%5f%72%65%6d%65%6d%62%65%72%22%3e情報を記憶しておく%3c%2f%6c%61%62%65%6c%3e %09%09%3c%69%6e%70%75%74%20%74%79%70%65%3d%22%73%75%62%6d%69%74%22%20%61%6c%74%3d%22コメントを追加%22%20%76%61%6c%75%65%3d%22コメントを追加%22%20%63%6c%61%73%73%3d%22%66%6f%72%6d%62%75%74%74%6f%6e%22%20%2f%3e %09%3c%2f%64%69%76%3e %3c%2f%66%6f%72%6d%3e