Mac OS X 10.3.9 PantherでSubversion, Konohaを利用するときのメモ

使われていなかったMacOSX 10.3を発見したので、
試しにKonohaをインストールしてみようと思ったときのメモです.

残念ながら、初めの段階で開発環境が整っていませんでした.
また、MacPortsもインストールに失敗したため、
(最新版のMacPortsは10.5など最新版のMacOSXを要求するため)
すべてソースコードからインストールする事にしました.


まず、wgetをインストールしました.
初めからインストールされているcurlだけでも
後の処理は実行可能なのですが、"-O"オプションをつけるのが
面倒だったため、オブションを指定せずに実行できるwgetを使用しています.

$ curl -O http://ftp.gnu.org/gnu/wget/wget-latest.tar.bz2
$ cd wget-latest.tar.bz2 
$ tar jxf wget-latest.tar.bz2 
$ cd wget-1.12/
$ ./configure && make && sudo make install

デフォルトでsubversionを起動する事ができなかったので
subversionソースコードからインストールする事にしました。
subversionneon, apr, apr-utilなどのライブラリに依存しているので、
まずはそれらのライブラリをインストールします.

$ wget http://www.webdav.org/neon/neon-0.29.3.tar.gz
$ tar zxf neon-0.29.3.tar.gz 
$ cd neon-0.29.3
$ ./configure && make && sudo make install

$ wget http://prdownloads.sourceforge.net/swig/swig-1.3.40.tar.gz
$ tar zxf swig-1.3.40.tar.gz 
$ cd swig-1.3.40
$ ./configure && make && sudo make install

$ wget http://ftp.kddilabs.jp/infosystems/apache/apr/apr-1.4.2.tar.gz
$ tar zxf apr-1.4.2.tar.gz 
$ cd apr-1.4.2
$ ./configure && make && sudo make install

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

ここで、Macに入っているPythonが2.3系だという事に気づいたので、
Python2.6をインストールすることにしました.

$ wget http://www.python.org/ftp/python/2.6.5/Python-2.6.5.tgz
$ tar zxf Python-2.6.5.tgz 
$ cd Python-2.6.5
$ ./configure && make
$ sudo make install

また、sqlite3にも依存していたため、sqlite3をインストールしました。
2010年5月16日現時点で最新版は3.6.23.1なのですが、うまくコンパイルすることが
できなかったのでバージョン3.6.13を使用しました.

$ wget http://www.sqlite.org/sqlite-amalgamation-3.6.13.tar.gz
$ tar zxf sqlite-amalgamation-3.6.13.tar.gz 
$ cd sqlite-3.6.13/
$ ls
$ ./configure && make && sudo make install

これでようやく、subversionコンパイルに入ります。

$ curl -O http://subversion.tigris.org/downloads/subversion-1.6.11.tar.bz2
$ tar jxf subversion-1.6.11.tar.bz2 
$ cd subversion-1.6.11


そのままではsubversionコンパイルが通らないため
ソースコードを一部変更しました。

$ cd subversion-1.6.11/subversion
$ diff -u libsvn_subr/macos_keychain.c.org libsvn_subr/macos_keychain.c
--- libsvn_subr/macos_keychain.c.org    Mon May 17 00:23:47 2010
+++ libsvn_subr/macos_keychain.c        Sat May 15 01:28:57 2010
@@ -32,6 +32,7 @@
 #include "svn_private_config.h"

 #ifdef SVN_HAVE_KEYCHAIN_SERVICES
+#define __FIX__
 #include <Security/Security.h>

また、Security/Security.hのヘッダ内部で参照している
/System/Library/Frameworks/CoreFoundation.framework/Headers/CFBase.h
のファイルにてMacTypes.hが存在しないため、コンパイルが通りませんでした.
そのため、CFBase.hも変更を加えました.

$ diff -u CFBase.h.org CFBase.h    
--- CFBase.h.org        Mon May 17 00:27:48 2010
+++ CFBase.h    Mon May 17 00:27:25 2010
@@ -21,7 +21,7 @@
     #endif
 #endif /* !DARWIN */
 #if defined(DARWIN)
-#if defined(__MACH__) 
+#if defined(__MACH__) && !defined(__FIX__)
     #include <CarbonCore/MacTypes.h>
 #else
     typedef unsigned char           Boolean;

これでsubversionのインストールが完了しました.

$ ./configure --with-apr=/usr/local/apr/ --with-apr-util=/usr/local/apr/ --with-neon=/usr/local/
$ make && sudo make install

あとはKonohaのソースコードsubversionを用いて取得し、
with-iconvのオプションを使用してconfigure, make, make install
をするとKonohaをMac OS X 10.3.9 Pantherで利用する事が出来ます

$ ./configure --with-iconv && make 
$ sudo make install
$ konoha
Konoha 0.5.2(kurume) source/LGPL3.0 (rev:1377, May 16 2010 21:15:44)
[GCC 3.3 20030304 (Apple Computer, Inc. build 1666)] on macosx_32 (32, UTF-8)
Options: iconv refc sqlite3 thread regex used_memory:366 kb
>>>