Build FAQ for OpenOffice.org

Last update 19 January 2001


原文:http://www.openoffice.org/FAQs/build_faq.html
管理:OpenOffice.org日本ユーザ会翻訳プロジェクト
翻訳:jay
査読:八木,Y,中本
文書更新履歴


Q.www.OpenOffice.org で入手できるソースコードはどのようなものですか?

A.OpenOffice.org のソースコードは StarOffice 6.0 用に開発されたものとほぼ同一です。OpenOffice.org 用として入手できないものは Sun Microsytems がサードパーティからライセンスを供与されたソースコードとバイナリのうち,Sun Micosystems が外部へ提供する権利を持たないものです。提供できないコードは区別され除外されています。OpenOffice.org をビルドするために,サードパーティのソースコードを使う方法が提供され,(どうしても使えない場合には)そのソースコードは除外されます。OpenOffice.org はこの点についてさらなる作業が必要としています。

StarOffice 6.0 の開発者は変更点を October 13, 2000 以降も www.OpenOffice.org にある CVS ツリーにコミットし続けます。


Q.OpenOffice.org はどのプラットフォームでビルドできるのでしょう?

A.OpenOffice.org は Linux(RedHat 6.2),Solaris(Sparc 2.6),そして WindowsNT でビルドされています。
Mac OS X 用のポートは開発段階にあり,現在作業中のものを CVS から手に入れることができます。
以前サポートされていた OS/2,HP/UX その他についてはソースの入手は可能ですがビルドはされていません。


Q.OpenOffice.org をビルドするにはどうしたらいいのでしょう?

A.Sun Microsystems はビルド環境を変更し,開発チームが利用している専用の環境以外でも OpenOffice.org をビルドできるようにしました。OpenOffice.org は可能な限りオープンソースのビルドツールを使うようにしていますが,まだまだオープンソースのツールを使う余地はありそうです。専用のビルドツールについてはソースコードが提供されます。

ビルドの手順はできるだけ一般的なオープンソースのものと同じようになるよう配慮されていますが,このアプリケーションの複雑さとサイズの大きさにより通常とは違うところもあります。

Linux での OpenOffice.org のビルド手順

cd config_office
./configure
cd ..
csh
source LinuxIntelEnv.Set
dmake
dmake install

configure スクリプトはビルドに必要なものが全て揃っているか調べて環境変数をセットできるファイルを書き出します。configure は makefile を作成するのに autoconf を使いません。makefile はモデュールの依存関係を記したデータベースからビルドツールにより作成され, CVS ツリーにチェックインされます。一つの makefile で OpenOffice.org をビルドできる全ての OS とプラットフォームに対応しています。

Linux, Solaris, Mac OS X, WindowsNT についてはビルドツールのバイナリが提供されます。バイナリがない場合はブートストラップでビルドツールが作成されます。

dmake は GNU make と似たようなユーティリティです。dmake は少し変わったシンタックスを使いますが,Linux, Solaris, WindowsNT で利用できます。OpenOffice.org のビルドに使われる dmake はオリジナルのフリーウェアのバージョンに変更を加えたもので,http://www.wticorp.com から入手できます。

CVS の各モデュールがビルドされた後,共用のヘッダ,ライブラリそしてバイナリは OpenOffice.org のルート直下にある solver ディレクトリに配置されます。CVS のモデュールは順次 solver の内容を使ってビルドされます。


Q.OpenOffice.org を完全にビルドするにはソースを含め,ハードディスクにどれだけの空き容量が必要ですか?

A.推奨値は 3GB です。
ソースは約 328MB。
ビルドするのに 2GB の空き。
インストレーションセットを作るには約 300MB。


Q.OpenOffice.org をビルドするのにかかる時間は?

A.今までの経験では,Pentium III, 256MB RAM で Linux を使い約20時間かかります。


Q.ディベロッパーと StarOffice の関係は?

A.Sun の Release Engineering では週に一度 StarOffice のフルビルドを最適化された環境のもとで行います。ビルドが成功したならば solver を全てのディベロッパーに公開します。ディベロッパーは各自の CVS モデュールをその solver を使ってビルドします。コードに変更があった場合はディベロッパーはテストのために最新の solver で CVS モデュールをビルドし,共用のヘッダ,ライブラリそしてバイナリを提供します。

フルビルド間では互換性の無い変更も許されています。互換性の無いものが混ざらないように,共用のライブラリと DLL の名前には毎週インクリメントされるビルドナンバーが含まれます。

コードベースがあまりに大きいこともあり,OpenOffice.org コミュニティを支援する意味で Sun は開発に使っている環境と同様のものを提供することを計画しています。Sun はwww.openoffice.orgにおいて定期的にいくつかのプラットフォームの solver をそれぞれ一つの tarball にして公開する予定です。これを milestone と呼ぶことにします。

したがって,推奨される開発の手順は次のようになります:

  1. 開発者はプラットフォームにあった milestone solver tarball をダウンロード。
  2. 同じ milestone の該当プロジェクトを CVS からチェックアウト。
  3. コードを変更。
  4. ビルド。(このビルドは solver の内容に対して行われ,コンパイルが成功したならば,出来上がったものを solver に加える)
  5. 新しいバージョンのテスト。
  6. パッチを提出。

OpenOffice.org のコードベースはとても大きな物です。開発者間の同期を取る手段として CVS が使われています。低レベルの CVS モデュールにおける API の変更はチェックインされてより高いレベルのモデュールに反映されます。互換性の無い milestone のビルドでは低レベルのモデュールで加えられた API の変更が関連するモデュール全てに反映されていないこともありえます。したがって,ヘッドリビジョンを使ったビルドは必ずしも成功しません。


Q.プロジェクトはいくつあるのですか?

A.OpenOffice.org には約20のプロジェクトがあります。これらのプロジェクトはコミュニティ間の連携を円滑にするためにあります。プロジェクトには XML Office, Porting, Localization, Applications, Build Tools などがあります。


Q.ソースコードはどれぐらいありますか?

A.OpenOffice.org には約20,000のソースファイルがあります。
OpenOffice.org には約7,600,000行のコードがあります。コードの大半は C++ で書かれています。


Q.リリースから欠けているものとその理由は?

A.StarOffice にライセンスが与えられた StarOffice の外部コンポーネントの一部のソースコードは OpenOffice.org では使えません。このようなコンポーネントに含まれるのは:
Bristol XPrinter - Unix プラットフォームでの印刷
L&H International CorrectSpell, Intl. Electronic Thesaurus - スペルチェック,国際辞書と類義語辞典
Inso Word for Word - MS Office 以外の文書フォーマットに対応した文書フィルター
Adabas D - データベースエンジン

www.OpenOffice.org で配布できない外部のソースコードを入手する方法は明らかにされます。


Q.他に気をつけることは?

A.コメントの大半はドイツ語で,一部英語です。将来的には英語でコメントする方針です。

OpenOffice.org をダウンロードしてビルドするに必要なものがあります。たとえば Linux では以下のものが必要です:

CVS 1.10
FTP
tar
glibc 2.1x あるいはそれ以上
gcc 2.95.2
JDK 1.1.8
Perl 5
csh
General Polygon Clipper (gpc) のソース


戻る


この文書の更新履歴

2002 Jul. 12 日本語訳完