:::: MENU ::::

trac・subversion導入奮闘記 エラー編

Pocket

tracのプロジェクト作成に失敗する

 

MySQL編

実行ログ

 Path to repository [/path/to/repos]> /var/data/svn/hoge
 
 Creating and Initializing Project
 Initenv for '/var/data/trac/hoge' failed.
 Failed to create environment.
 Unsupported database type "mysql"
 Traceback (most recent call last):
 File "/usr/local/Python252/lib/python2.5/site-packages/Trac-0.11.1.ja1-py2.5.egg/trac/admin/console.py", line 568, in do_initenv options=options)
 File "/usr/local/Python252/lib/python2.5/site-packages/Trac-0.11.1.ja1-py2.5.egg/trac/env.py", line 188, in __init__self.create(options)
 File "/usr/local/Python252/lib/python2.5/site-packages/Trac-0.11.1.ja1-py2.5.egg/trac/env.py", line 311, in create DatabaseManager(self).init_db()
 File "/usr/local/Python252/lib/python2.5/site-packages/Trac-0.11.1.ja1-py2.5.egg/trac/db/api.py", line 69, in init_db connector, args = self._get_connector()
 File "/usr/local/Python252/lib/python2.5/site-packages/Trac-0.11.1.ja1-py2.5.egg/trac/db/api.py", line 97, in _get_connector raise TracError('Unsupported database type "%s"' % scheme)
 TracError: Unsupported database type "mysql"
 
 [root@localhost .egg-cache]# /etc/init.d/httpd restart
 httpd を停止中:                                            [失敗]
 httpd を起動中: Syntax error on line 4 of /etc/httpd/conf.d/trac.conf:
 Invalid command 'PythonHandler', perhaps misspelled or defined by a module not included in the server configuration
 [失敗]

おそらく原因はMySQL-pythonだと思う。
インストールしてあるけど、Pathが通っていない。
python >>> import MySQLdbうまくいかなかったからそうだろう。
問題は、どうやってパスをつけるかか。。。

 [root@localhost /]# python
 Python 2.5.2 (r252:60911, Oct 29 2008, 11:49:04)
 [GCC 4.1.2 20071124 (Red Hat 4.1.2-42)] on linux2
 Type "help", "copyright", "credits" or "license" for more information.
 >>> import MySQLdb
 Traceback (most recent call last):
 File "<stdin>", line 1, in <module>
 ImportError: No module named MySQLdb

どないせいっちゅーねん。。。

解決:

yum -y install MySQL-pythonでは、python2.4のほうにインストールされてしまう。
なので、SourceForge.net: MySQL for Pythonでソースとってきて、ドグマ、水平思考、並列化: 【Python】 MySQL-pythonのインストールのようにインスコ

 # wget http://nchc.dl.sourceforge.net/sourceforge/mysql-python/MySQL-python-1.2.2.tar.gz
 # tar xvf MySQL-python-1.2.2.tar.gz
 # cd MySQL-python-1.2.2
 # python setup.py build
 # python setup.py install

 

SQLite編

実行ログ

 Creating and Initializing Project
 Initenv for '/var/data/trac/picolit' failed.
 Failed to create environment.
 global name 'sqlite' is not defined
 Traceback (most recent call last):
 File "/usr/local/Python252/lib/python2.5/site-packages/Trac-0.11.1.ja1-py2.5.egg/trac/admin/console.py", line 568, in do_initenv
 options=options)
 File "/usr/local/Python252/lib/python2.5/site-packages/Trac-0.11.1.ja1-py2.5.egg/trac/env.py", line 188, in __init__
 self.create(options)
 File "/usr/local/Python252/lib/python2.5/site-packages/Trac-0.11.1.ja1-py2.5.egg/trac/env.py", line 311, in create
 DatabaseManager(self).init_db()
 File "/usr/local/Python252/lib/python2.5/site-packages/Trac-0.11.1.ja1-py2.5.egg/trac/db/api.py", line 70, in init_db
 connector.init_db(**args)
 File "/usr/local/Python252/lib/python2.5/site-packages/Trac-0.11.1.ja1-py2.5.egg/trac/db/sqlite_backend.py", line 136, in init_db
 cnx = sqlite.connect(path, timeout=int(params.get('timeout', 10000)))
 NameError: global name 'sqlite' is not defined

解決:

initenvで”global name ‘sqlite’ is not defined” – Do You PHP はてな
RHEL4にTracインストール – Lazy Technology

libsqlite3.so.0の位置を/etc/ld.so.confに登録する

 # sudo vi /etc/ld.so.conf
 /usr/local/lib    ★この行を追加
 # sudo /sbin/ldconfig

 

 

共通項目

 

Genshiのバージョンが古いと言われる

第3回 TracをLinuxにインストール,Tracの基本的な設定:ITpro
新しいのをeasy-install

結局表示されないんだが……Internal Server Errorとかさ

知らん、がんばれ

2007-08-07 – seijinia(セイジニア)
pythonがあやしかったら、

# yum -y install python python-setuptools mod_python

して、もっかい最新のmod_pythonをmake installするとかかな。

ひさびさにアクセスしてみたら、またInternal Server Error……

もう再インストしかなくね?
Trac – ymkoの日記(管理者権限ないのでhomeにプログラムをインストールすることに執念を燃やす日記)

setuptools

Python Package Index : setuptools 0.6c11

# easy_install setuptools-0.6c11-py2.6.egg

Genshi

Download – Genshi
rpmにbuildしてインストール

Trac

インタアクト株式会社–業務内容–公開資料
rpmにbuildしてインストール

trac-adminが使えない

trac-adminはよく使うのでパスを通しておけ

# ln -s /usr/local/Python252/bin/trac-admin /usr/local/bin/trac-admin

Python2.6系だとエラーが出る

/usr/local/lib/python2.6/site-packages/MySQL_python-1.2.2-py2.6-linux-i686.egg/MySQLdb/__init__.py:34: DeprecationWarning: the sets module is deprecate

こんなんが出るが、setsモジュールがpython2.6から非推奨になっているため表示されているだけ。
無視していい。

subversionをrpmやyumで入れたものを使うと、うまくいかない

rpm版だとsvn-pythonが見あたらないので、
Swigバインディングのインストール行ったあと、pythonに自力でパスを張る

 # locate svn-python
 /usr/local/lib/svn-python
 # vi /usr/local/Python252/lib/python2.5/site-packages/subversion.pth
 /usr/local/lib/svn-python
 # python >>> import svn
Pocket


So, what do you think ?