Linux Cheat Sheet for Mac and Windows Programmers
出典: MDC
このページは、比較的 Unix を使い始めて日が浅いプログラマを対象にしています。Linux マシーンにアクセスし、mozilla ビルドやパッチの適用/生成をサクッと済ませたい人向きです。
Linux のビルドシステムについてより詳しい情報を探している場合、または独自の Linux ビルドマシーンを構築しようとしている場合は、必ず公式の Unix ビルドガイド を読んでください。
目次 |
[編集] 他のマシーンから Linux マシーンへはどのようにしたらログインできるのですか?
好きなプラットフォームから telnet を使ってリモートの Linux (または他の Unix) マシーンにログインしてください。そのリモートマシーンのホスト名 (静的な IP ではなく DHCP を使っている場合は、マシーンがリブートされる度に異なる理解困難なものになります) を入力しなければなりません。
勿論、そのマシーンが誰かの所有物だったら、必ず事前に持ち主から使用許可を貰わなくてはなりません。
ログインできたら、"cd" (change directory: もっと文字を入力したいなら chdir も通じます) を使って、ビルドツリーのあるところまで移動します。
[編集] 新しいビルドを始めるには?
まず、ビルド先をどこにするか決めなければなりません。取り敢えず、ディスク容量が十分にある事を確認します。現在、完全なビルドデバッグツリーは約 1.6Gb 必要です。df -k とすると、マシーンにマウントされている全ファイルシステム上の利用可能なディスク容量が表示されます。ここに集う多くの Linux Mozilla 開発者は /builds ディレクトリを作成して、ビルドツリーを置いています。df -k /builds とすると、ディレクトリが存在するかどうか、そしてそのスペースの容量が表示されます。(-k とするとディスクブロックの替わりにキロバイトで表示されます。システムによっては変化がありません。)
ログインすると、あなたのホームディレクトに入る事になります。大規模な会社のマシーンでは、ホームディレクトリがリモートサーバからマウントされた NFS である可能性もあります (例: Netscape はそうしています)。(これを確かめるには、"df" としてください。そうすると "Filesystem" コラムにホスト名が表れます) あなたのホームディレクトリがマウントされた NFS である場合、そこではビルドしない方が良いでしょう。ビルドをローカルディスクで行うと、ずっと早く処理できます。
ビルドを置くための新しいディレクトリを作成する: 【訳注: myname は使用しているユーザー名です】
mkdir /builds/myname
そのディレクトリへ移動する:
cd /builds/myname
cvsroot を設定する。これはあなたの使用シェルによって違います。良くわからない場合は両方試してください。どちらか一方は作動します。
setenv CVSROOT :pserver:myname%netscape.com@cvs.mozilla.org:/cvsroot
(csh/tcsh) または、sh/bash を使用している場合、
set CVSROOT=:pserver:myname%netscape.com@cvs.mozilla.org:/cvsroot; export CVSROOT
client.mk を引っ張ってくる:
cvs co mozilla/client.mk
mozilla ディレクトリに移動する:
cd mozilla
全てを引っ張ってきてビルドする:
make -f client.mk
1、2 時間ほど待って...
バイナリーのある場所まで移動する:
cd dist/bin
mozilla を実行する:
./mozilla
[編集] ツリーの一部を再ビルドするには?
正しいディレクトリ (例: cd layout/base/src) まで移動して、"make" を入力します。
まず始めにそのディレクトリをアップデートしたい場合は、cvs update とするとできます。
ツリーを引っ張ってくる事なく全体を再ビルドしたい場合は、mozilla の階層まで戻り、以下のように入力します。
make -f client.mk build
全てを引っ張ってきて再ビルドするには、mozilla の階層まで戻り、以下のように入力します。
make -f client.mk
[編集] パッチはどのようにして適用するのですか?
マシーンからアクセスできる場所にパッチを保存します。mozilla や 4.x を使ってメールを読んで保存できるように、コマンドライン ftp か GUI クライアントを使ってパッチを ftp から持ってきます。あるいは フロッピーに保存 しても良いでしょう。お勧めする方法は、パッチを /tmp (例: /tmp/my.diff または my.patch) に保存します。(拡張子は問題ではありません。自分が覚えられるものを使ってください。) パッチ本体の前にメールヘッダーが付いていたりしても大丈夫です。
パッチが作成されたソースツリーのあるディレクトリまで移動します。
patch < /tmp/my.patch
(要するにパッチに名前を付けます) パッチが複数のディレクトリに跨がる場合は、以下が必要かもしれません:
setenv POSIXLY_CORRECT 1 ; patch -p0 < mypatch.diffs
[編集] どのようにしてフロッピーから読み込むのですか?
良い質問です。システムによっては自動マウントフロッピーを設定します。そのためフロッピーを入れて以下のように入力してください:
mount /mnt/floppy
あるいは、
mount /floppy
この方法だとエラーが出てしまう場合は、そのマシーンの管理者に連絡して、/etc/fstab の fd0 の行を以下の文字列に置き換えて貰いましょう:
/dev/fd0 /mnt/floppy auto noauto,owner 0 0
[編集] パッチはどのようにして生成するのですか?
変更されたファイルのあるディレクトリかそれより上位のディレクトリで、cvs diff を実行してください:
cvs diff -u [変更されたファイルのリスト]
パッチに含まれる新しいファイルも含めいたい場合は、diff の引数として -N を追加しても構いません。
[編集] デバッグはどのようにするのですか?
これはまた全然別の話です。より詳しくは Debugging FAQ を参照してください。
[編集] 他の事をするためにはどうすれば良いですか?
mozilla-unix alias (購読の仕方、またはニュールブループとしての読み方は コミュニティページ を見てください) が Linux ビルドに付いて質問するには良い場所です。または irc.mozilla.org のチャンネル #mozilla に行けば、そこに出没する Xheads を見つける事もできます。
