連絡先 トップに戻る 最初に戻る 前に戻る 次へ進む
$Date: 2017-05-06 22:21:48 +0900 (2017/05/06 (土)) $
$Revision: 1117 $

ra_serf を有効にしてコンパイルする方法 (VC6)

概要

libserf を有効にしてコンパイルする方法を簡単に説明します。

以下の手順を既に行っていることを前提としています。

  1. 最小の構成でコンパイルする (VC6)

必要なファイルの入手

注意

ra_serf はまだ不安定です。

下準備

以下のような感じでファイルを置くとして以後の説明をする。
│
├─common
│   │
│   ├─db4-win32
│   ├─serf ← serf の trunk ディレクトリに対応する
│   │   │
│   │   ├─serf.h
│   │   ├─(serf.dsp) ← gen-make.py を実行すると作成される。
│   │   │   ...
│   │   └─README
│   │
│   ├─openssl-0.9.8d
│   ├─httpd-2.2.3
│   └─zlib-1.2.3
│
└─trunk (subversion のソースコード)
      │
      ├─INSTALL
      │  ... (中略) ...
      └─gen-make.py

Subversion のコンパイル

プロジェクトファイルの作成

以下のコマンドを subversion のソースコードのルートで実行する。 (見やすくするため改行していますが、実際には1行で入力します。)
D:\svnwork\subversion\serf> python gen-make.py -t dsp
	--with-serf=..\common\serf
	--without-neon
	--with-berkeley-db=..\common\db4-win32
	--with-zlib=..\common\zlib-1.2.3 
	--with-httpd=..\common\httpd-2.2.3

Subversionのコンパイル

subversion_msvc.dsw を VC6 で開いて __ALL__ または __ALL__TESTS__ の 構成を選択してビルド(F7)を実行する。

svn コマンドの実行確認

以下のような構成でファイルをコピーする。

gen-make.py を実行するときに --disable-shared を指定しなかった場合

│
├─libapr-1.dll ( APR 0.9.x の場合 libapr.dll)
├─libapriconv-1.dll (同様に libapriconv.dll )
├─libaprutil-1.dll  (同様に libaprutil.dll )
├─libdb44.dll
├─libsvn_client-1.dll
├─libsvn_delta-1.dll
├─libsvn_diff-1.dll
├─libsvn_fs-1.dll
├─libsvn_ra-1.dll
├─libsvn_repos-1.dll
├─libsvn_subr-1.dll
├─libsvn_wc-1.dll
├─svn.exe
├─svnadmin.exe
├─svndumpfilter.exe
├─svnlook.exe
├─svnserve.exe
├─svnsync.exe
└─svnversion.exe

動作確認

svn.exe を実行して以下の出力が出ることを確認する。
D:\svnwork\subversion\serf>svn --version
svn, バージョン 1.5.0 (dev build)
   コンパイル日時: May 21 2007, 21:48:42

Copyright (C) 2000-2007 CollabNet.
Subversion はオープンソースソフトウェアです。
http://subversion.tigris.org/ を参照してください。
この製品には、CollabNet (http://www.Collab.Net/) によって開発されたソフトウェア
が含まれています。

以下のリポジトリアクセス (RA) モジュールが利用できます:

* ra_svn : svn ネットワークプロトコルを使ってリポジトリにアクセスするモジュール。
  - 'svn' スキームを操作します
* ra_local : ローカルディスク上のリポジトリにアクセスするモジュール。
  - 'file' スキームを操作します
* ra_serf : WebDAV プロトコルを使い serf でリポジトリにアクセスします。
  - 'http' スキームを操作します
  - 'https' スキームを操作します