[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[debian-devel:01126] How to "build" (Re: missing package)



石田@北大です。

>>>>> "前原さん" == Keita Maehara <maehara@xxxxxxxxxxxxxxxxxxxxx> writes:

    前原さん> 私もちゃんと理解しているわけではないので、この機会に添削
    前原さん> してもらおうと思って;-)、必要最小限の手順を簡単にまとめ
    前原さん> てみました(ここでは Single Binary を仮定しています)。

僕も便乗させてください。以下は、前原様の原文に少し手を加えています。
(copyrightは大丈夫でしょうか? > 前原様)

----------------------------------------------------------------------

1. オリジナルのソースを展開する。
   そして、必要ならばパッケージ名を変える。
   日本語packageなら、original.XXX -> original-ja.XXX。

% tar zxvf package-x.y.z.tar.gz

2. 展開したディレクトリに入って deb-make を実行し、パッケージのタイプ
   を選択する。すると、debian というサブディレクトリが作成され、必要な
   ファイルがその中に収められる。

% cd package-x.y.z
% export EMAIL=dpm@debian.or.jp
% deb-make
Email-Address           : dpm@debian.or.jp
Date used               : Sat, 7 Jun 1997 23:54:11 +0900
Maintainer              : Debian Package Maintainer
Package Name            : package
Version                 : x.y.z

Type of Package (S=Single Binary, M=Multi-Binary, L=Library, X=Abort? s/m/l/x s
package debianized. Please edit the files in the debian directory now
and check that the Makefile puts the binaries into $DESTDIR and not in /

・パッケージ名には制約があるため、deb-make に文句を言われる場合は、ソー
  スを展開したディレクトリの名前を適切なものに変更する。("."に注意)

・パッケージ作成者のメールアドレスを EMAIL 環境変数に入れておくと制御
  情報に反映される。

3. debian ディレクトリ内のファイルを編集する。

・拡張子 .ex のファイルはとりあえず削除してもよい。

・debian/{README.debian,changelog,copyright} の内容を適切に記述する。
  debian/changelogにはdch(1)を使うと便利。同versionなら dch [text]、
  version-upなら dch -n [text]。

・debian/dirs には、インストール時に必要なディレクトリの一覧を記述する。

・debian/control には、パッケージの制御情報を記述する。依存しているラ
  イブラリに関しては、後で Depends の項目に自動的に生成されるが、それ
  以外に依存しているパッケージがあれば記述しておく。また、Recommends,
  Suggests, Conflicts, Replaces, Provides が必要なら追加しておく。
  通常、Section,Architecture,Descriptionを変える。

・debian/rules は、debian/tmp をルートディレクトリとしてインストールを
  行なう Makefile の雛形になっている。ターゲット binary-indep にはアー
  キテクチャに依存しないものを、binary-arch にはアーキテクチャに依存す
  るものに関する記述を行なう。

・./configure を使用するソフトウェアの場合は、debian/rules ファイルの
  ターゲット build の中に ./configure を呼び出す箇所が現れるので、渡し
  ておきたいオプションがあれば追加する。

4. ソースが展開されたディレクトリに戻り、root 権限で build コマンドを
   実行する。

% su
Password:********
# build

----------------------------------------------------------------------

最後の4ですが、僕の場合は、いきなりrootでbuildは恐いので、とりあえず
make installまでは一般userでtestしてみます。方法としては、
 o debian/rulesのcheckrootを消す。
 o debian/rulesのscriptを読みながら、手動でinstallしてみる。
ぐらいでしょうか。install-scriptによってinstallの仕方が違うのでこうして
います。(僕はおっちょこちょいなので、こんな面倒なことをしてます)

失礼しました。

                                石田 崇 tahsi@xxxxxxxxxxxxxxx