917bb40ea9
Submitted by: kano at na rim or jp Coordinated by: Nobuyuki Koganemaru <n-kogane at syd odn ne jp>
530 lines
13 KiB
Groff
530 lines
13 KiB
Groff
.\"
|
|
.\" Copyright (c) 1997 David E. O'Brien
|
|
.\"
|
|
.\" All rights reserved.
|
|
.\"
|
|
.\" Redistribution and use in source and binary forms, with or without
|
|
.\" modification, are permitted provided that the following conditions
|
|
.\" are met:
|
|
.\" 1. Redistributions of source code must retain the above copyright
|
|
.\" notice, this list of conditions and the following disclaimer.
|
|
.\" 2. Redistributions in binary form must reproduce the above copyright
|
|
.\" notice, this list of conditions and the following disclaimer in the
|
|
.\" documentation and/or other materials provided with the distribution.
|
|
.\"
|
|
.\" THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY EXPRESS OR
|
|
.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
|
.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
|
.\" IN NO EVENT SHALL THE DEVELOPERS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
|
.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
|
.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
|
.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
|
.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
|
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
.\"
|
|
.\" %FreeBSD: src/share/man/man7/ports.7,v 1.45.2.3 2005/02/10 07:02:33 krion Exp %
|
|
.\"
|
|
.\" $FreeBSD$
|
|
.Dd February 8, 2005
|
|
.Dt PORTS 7
|
|
.Os
|
|
.Sh 名称
|
|
.Nm ports
|
|
.Nd 寄贈されたアプリケーション
|
|
.Sh 解説
|
|
.Fx
|
|
ports コレクション
|
|
によって、ユーザや管理者は簡単にアプリケーションをインストールする
|
|
ことができます。
|
|
.Em port
|
|
はそれぞれ、オリジナルのソースコードを
|
|
.Bx
|
|
上でコンパイルして実行
|
|
させるために必要なパッチのすべてを含んでいます。
|
|
アプリケーションのコンパイルは、
|
|
port
|
|
のディレクトリで
|
|
.Nm make Cm build
|
|
と入力するだけで簡単にできます。
|
|
port
|
|
の
|
|
.Pa Makefile
|
|
は、ローカルディスクからもしくは FTP を使って、自動的にアプリケーションの
|
|
ソースコードを取得 (fetch)
|
|
して、自分のシステムでそれを展開して、
|
|
パッチを当て、コンパイルします。
|
|
すべてが順調に進んだ場合、
|
|
.Nm make Cm install
|
|
を実行することにより、アプリケーションがインストールされます。
|
|
.Pp
|
|
インストールされたシステムよりも新しい ports を、
|
|
.Fx
|
|
リポジトリからダウンロードして使用できます。
|
|
ただし、最初に適切な
|
|
.Dq "アップグレードキット"
|
|
を
|
|
.Pa http://www.FreeBSD.org/ports/
|
|
から取得してインストールすることが重要です!
|
|
新しい ports をダウンロードするときには、
|
|
.Xr portcheckout 1
|
|
スクリプト (もちろんこれも port です!) が役立つでしょう。
|
|
.Pp
|
|
port の利用に関してさらに情報が必要ならば、
|
|
.%B "The FreeBSD Handbook"
|
|
の
|
|
.Dq "Packages and Ports"
|
|
(原文
|
|
.Pa file:/usr/share/doc/en_US.ISO8859-1/books/handbook/ports.html
|
|
または、
|
|
.Pa http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/ports.html
|
|
、和文
|
|
.Pa file:/usr/share/doc/ja_JP.eucJP/books/handbook/ports.html
|
|
または、
|
|
.Pa http://www.FreeBSD.org/doc/ja_JP.eucJP/books/handbook/ports.html )
|
|
に目を通して下さい。
|
|
port を新規に作成するための情報については、
|
|
.%B "The Porter's Handbook"
|
|
.Pa ( file:/usr/share/doc/en_US.ISO8859-1/books/porters-handbook/index.html
|
|
または、
|
|
.Pa http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/porters-handbook/ )
|
|
に目を通して下さい。
|
|
.Sh ターゲット
|
|
ターゲットのいくつかは、サブディレクトリを再帰的に make して行きます。
|
|
これにより、例えば、
|
|
.Dq Li biology
|
|
の port すべてをインストールすることができます。
|
|
再帰的に make を行なうターゲットは、
|
|
.Cm build , checksum , clean , configure ,
|
|
.Cm depends , extract , fetch , install ,
|
|
.Cm package
|
|
です。
|
|
.Pp
|
|
次のターゲットは、それぞれすぐ手前のターゲットによって順に自動的に
|
|
実行されます。
|
|
すなわち、
|
|
.Cm build
|
|
は、
|
|
(必要があれば、)
|
|
.Cm install
|
|
によって実行されます。
|
|
以下のターゲットそれぞれについて、同様のルールが
|
|
.Cm fetch
|
|
まで順次適用されます。
|
|
通常は、ターゲットとして、
|
|
.Cm install
|
|
を指定するだけでよいはずです。
|
|
.Bl -tag -width ".Cm configure"
|
|
.It Cm config
|
|
.Xr dialog 1
|
|
を使用して、この port の
|
|
.Va OPTIONS
|
|
を設定します。
|
|
.It Cm fetch
|
|
.Va MASTER_SITES
|
|
と
|
|
.Va PATCH_SITES
|
|
でリストされたサイトから、
|
|
この port を構築するために必要なファイルすべてを取得
|
|
(fetch) します。
|
|
.Va FETCH_CMD , MASTER_SITE_OVERRIDE ,
|
|
.Va MASTER_SITE_BACKUP
|
|
を参照して下さい。
|
|
.It Cm checksum
|
|
取得した distfile のチェックサムが port で動作確認されたものと
|
|
一致するかどうかを検証します。
|
|
.Va NO_CHECKSUM
|
|
を定義することで、このステップを飛ばすことができます。
|
|
.It Cm depends
|
|
現在の port と依存関係にある port をインストール
|
|
(もしくは、必要がある場合のみコンパイル) します。
|
|
ターゲット
|
|
.Cm extract
|
|
もしくは
|
|
.Cm fetch
|
|
により呼び出された場合、
|
|
.Cm fetch-depends , build-depends
|
|
などとしてひとつずつ実行されます。
|
|
.Va NO_DEPENDS
|
|
を定義することで、このステップを飛ばすことができます。
|
|
.It Cm extract
|
|
distfile を作業用ディレクトリに展開します。
|
|
.It Cm patch
|
|
port に必要なパッチすべてを適用します。
|
|
.It Cm configure
|
|
port を構成 (configure) します。
|
|
port によっては、この段階で質問して
|
|
くるものもあります。
|
|
.Va INTERACTIVE
|
|
と
|
|
.Va BATCH
|
|
を参照して下さい。
|
|
.It Cm build
|
|
port を構築します。
|
|
これはターゲット
|
|
.Cm all
|
|
を呼び出すことと同じです。
|
|
.It Cm install
|
|
port をインストールし、この port をインストールしたことを
|
|
package
|
|
(訳注:
|
|
.Fx
|
|
の package system におけるパッケージを指す場合にこう表記します)
|
|
システムに登録します。
|
|
このターゲットは、実際に必要なこと
|
|
すべてを行なってくれます。
|
|
.El
|
|
.Pp
|
|
次のターゲットは、通常のインストールプロセスでは実行されません。
|
|
.Bl -tag -width ".Cm fetch-recursive"
|
|
.It Cm showconfig
|
|
この port の
|
|
.Va OPTIONS
|
|
設定を表示します。
|
|
.It Cm showconfig-recursive
|
|
この port と依存するものの
|
|
.Va OPTIONS
|
|
設定を表示します。
|
|
.It Cm rmconfig
|
|
この port の
|
|
.Va OPTIONS
|
|
設定を削除します。
|
|
.It Cm rmconfig-recursive
|
|
この port と依存するものの
|
|
.Va OPTIONS
|
|
設定を削除します。
|
|
.It Cm config-conditional
|
|
すでに
|
|
.Va OPTIONS
|
|
設定を持っている port をスキップします。
|
|
.It Cm fetch-list
|
|
この port を構築するために取得されるファイルのリストを表示します。
|
|
.It Cm fetch-recursive
|
|
この port と依存するものの distfile を取得します。
|
|
.It Cm fetch-recursive-list
|
|
.Cm fetch-recursive
|
|
で取得されるファイルのリストを表示します。
|
|
.It Cm pretty-print-run-depends-list , pretty-print-build-depends-list
|
|
コンパイル依存 port リストと実行依存 port リストを表示します。
|
|
また、これらの依存 port リストが依存する port についても表示します。
|
|
.It Cm clean
|
|
展開されたソースコードを削除します。
|
|
.Va NOCLEANDEPENDS
|
|
を定義しておかない限り、削除は依存関係にある port に再帰的に適用されます。
|
|
.It Cm distclean
|
|
その port の distfile を削除し、
|
|
.Cm clean
|
|
ターゲットを実行します。
|
|
.Va NOCLEANDEPENDS
|
|
を定義しておかない限り、
|
|
.Cm clean
|
|
の部分は依存関係にある port に再帰的に適用されます。
|
|
しかし、
|
|
.Cm distclean
|
|
の部分は決して再帰的に適用されません
|
|
(この挙動はひょっとするとバグかもしれません)。
|
|
.It Cm reinstall
|
|
.Cm deinstall
|
|
を使用すべきところでうっかり
|
|
.Xr pkg_delete 1
|
|
を使ってしまった場合、このターゲットを使って port を復活させて下さい。
|
|
.It Cm deinstall
|
|
.Xr pkg_delete 1
|
|
と同様に、インストールした port をシステムから削除します。
|
|
.It Cm deinstall-all
|
|
同じ
|
|
.Va PKGORIGIN
|
|
のインストール済 ports すべてを、システムから削除します。
|
|
.It Cm package
|
|
この port のバイナリ package を作成します。
|
|
まだインストールされて
|
|
いなかった場合、その port をインストールします。
|
|
package は
|
|
.Pa .tbz
|
|
ファイルであり、その port を他のマシンに
|
|
.Xr pkg_add 1
|
|
を使ってインストールする際に使用することができます。
|
|
.Va PACKAGES
|
|
で指定されたディレクトリが存在しなければ、package はカレントディレクトリに
|
|
置かれます。
|
|
.Va PKGREPOSITORY
|
|
と
|
|
.Va PKGFILE
|
|
とを参照して下さい。
|
|
.It Cm package-recursive
|
|
.Cm package
|
|
と似ていますが、依存する各 port に対しても package を作成します。
|
|
.It Cm readmes
|
|
その port の
|
|
.Pa README.html
|
|
ファイルを生成します。
|
|
これは、あなたのシステム上の全 port をウェブでブラウズできるようにするために、
|
|
.Pa /usr/ports
|
|
から使用可能です。
|
|
.It Cm search
|
|
.Pa INDEX
|
|
ファイルを、
|
|
.Va key
|
|
(port の名前、コメント、依存関係を調べます)、
|
|
.Va name
|
|
(port の名前のみを調べます)、
|
|
.Va path
|
|
(port のパスを調べます)、
|
|
.Va info
|
|
(port の情報を調べます)、
|
|
.Va maint
|
|
(port のメンテナを調べます)、
|
|
.Va cat
|
|
(port のカテゴリを調べます)、
|
|
.Va bdeps
|
|
(port の構築依存関係を調べます)、
|
|
.Va rdeps
|
|
(port の実行依存関係を調べます) などの
|
|
.Xr make 1
|
|
変数や、その逆の意味をもつ
|
|
.Va xname , xkey
|
|
などで指定されたパターンで検索します。
|
|
例えば、次のように入力します:
|
|
.Pp
|
|
.Dl "cd /usr/ports && make search name=query"
|
|
.Pp
|
|
すると、全 ports のうち名前が
|
|
.Dq Li query
|
|
に適合するものが探されます。
|
|
結果には、適合する ports のパス、コメント、メンテナ、構築依存、実行依存が
|
|
含まれます。
|
|
.Bd -literal -offset indent
|
|
cd /usr/ports && make search name=pear- \e
|
|
xbdeps=apache
|
|
.Ed
|
|
.Pp
|
|
名前に
|
|
.Dq Li pear-
|
|
を含み、apache が構築依存関係に含まれていないすべての ports を検索します。
|
|
.Bd -literal -offset indent
|
|
cd /usr/ports && make search name=pear- \e
|
|
xname='ht(tp|ml)'
|
|
.Ed
|
|
.Pp
|
|
名前に
|
|
.Dq Li pear-
|
|
を含みますが、
|
|
.Dq Li html
|
|
や
|
|
.Dq Li http
|
|
は含まないすべての ports を検索します。
|
|
.Bd -literal -offset indent
|
|
make search key=apache display=name,path,info keylim=1
|
|
.Ed
|
|
.Pp
|
|
.Dq Li apache
|
|
が名前、パス、情報フィールドのどれかに含まれるすべての ports を検索します。
|
|
他のレコードは無視します。
|
|
.It Cm describe
|
|
.Pa INDEX
|
|
ファイル中で使用される、各 port の 1 行説明を生成します。
|
|
.It Cm index
|
|
.Pa /usr/ports/INDEX
|
|
を作成します。
|
|
これは、
|
|
.Cm pretty-print-*
|
|
および
|
|
.Cm search
|
|
のターゲットで使用されます。
|
|
.Cm index
|
|
ターゲットを実行することで、
|
|
.Pa INDEX
|
|
ファイルが ports ツリーに対して最新であることを保証します。
|
|
.It Cm fetchindex
|
|
.Fx
|
|
クラスタから
|
|
.Pa INDEX
|
|
ファイルを取得します。
|
|
.El
|
|
.Sh 環境変数
|
|
これら環境変数のすべてを変更することができます。
|
|
.Bl -tag -width ".Va MASTER_SITES"
|
|
.It Va PORTSDIR
|
|
port ツリーの場所を指定します。
|
|
これは
|
|
.Fx
|
|
と
|
|
.Ox
|
|
では
|
|
.Pa /usr/ports
|
|
で、
|
|
.Nx
|
|
では
|
|
.Pa /usr/pkgsrc
|
|
です。
|
|
.It Va WRKDIRPREFIX
|
|
一時ファイルを作成する場所です。
|
|
.Va PORTSDIR
|
|
が読み込み専用の場合 (おそらく CD-ROM をマウントした場合) 有用です。
|
|
.It Va DISTDIR
|
|
distfile を探す場所であり、取得した distfile を置く場所です。
|
|
通常は
|
|
.Va PORTSDIR
|
|
の下の
|
|
.Pa distfiles/
|
|
です。
|
|
.It Va PACKAGES
|
|
ターゲット
|
|
.Cm package
|
|
でのみ使用されます。
|
|
package ツリーのベースディレクトリです。
|
|
通常は、
|
|
.Va PORTSDIR
|
|
の下の
|
|
.Pa packages/
|
|
です。
|
|
このディレクトリが存在する場合、package ツリーが (部分的に) 構築されます。
|
|
このディレクトリは存在する必要はありません。
|
|
存在しない場合、package は
|
|
カレントディレクトリに置かれます。
|
|
もしくは、以下のいずれか一方を定義
|
|
することができます。
|
|
.Bl -tag -width ".Va PKGREPOSITORY"
|
|
.It Va PKGREPOSITORY
|
|
package を置くディレクトリ。
|
|
.It Va PKGFILE
|
|
その package のフルパス。
|
|
.El
|
|
.It Va PREFIX
|
|
一般に、成果物をどこにインストールするかを指定します
|
|
(通常は
|
|
.Pa /usr/local
|
|
か、
|
|
.Pa /usr/X11R6
|
|
です)。
|
|
.It Va MASTER_SITES
|
|
ローカルマシンに配布ファイルが存在しない場合、最初に取得しに行くサイトです。
|
|
.It Va PATCH_SITES
|
|
ローカルマシンにパッチファイルが存在しない場合、最初に取得しに行くサイトです。
|
|
.It Va MASTER_SITE_FREEBSD
|
|
これが設定されている場合、すべてのファイルを
|
|
.Fx
|
|
のマスタサイトに
|
|
取りに行きます。
|
|
.It Va MASTER_SITE_OVERRIDE
|
|
すべてのファイルとパッチについて、まずこれらのサイトに行って取得を試みます。
|
|
.It Va MASTER_SITE_BACKUP
|
|
すべてのファイルとパッチについて、最後にこれらのサイトに行って取得を試みます。
|
|
.It Va MASTER_SITE_INDEX
|
|
.Fx
|
|
クラスタで構築された
|
|
.Pa INDEX
|
|
の取得先
|
|
.Pf ( Cm fetchindex
|
|
ターゲット用) です。
|
|
デフォルトは
|
|
.Pa http://www.FreeBSD.org/ports/
|
|
です。
|
|
.It Va FETCHINDEX
|
|
.Pa INDEX
|
|
を取得するコマンド
|
|
.Pf ( Cm fetchindex
|
|
ターゲット用) です。
|
|
デフォルトは
|
|
.Dq Nm fetch Fl am
|
|
です。
|
|
.It Va NOCLEANDEPENDS
|
|
これが定義されている場合、依存関係にある port に対して
|
|
.Cm clean
|
|
を再帰的に適用しません。
|
|
.It Va FETCH_CMD
|
|
ファイルを取得する際に使用するコマンドです。
|
|
通常は
|
|
.Xr fetch 1
|
|
です。
|
|
.It Va FORCE_PKG_REGISTER
|
|
これが設定されている場合、既にシステムに存在する package 登録情報を
|
|
上書きします。
|
|
.It Va MOTIFLIB
|
|
.Pa libXm. Ns Brq Pa a , Ns Pa so
|
|
の位置を指定します。
|
|
.It Va INTERACTIVE
|
|
これが設定されている場合、ユーザ入力が必要な port にのみ動作します。
|
|
.It Va BATCH
|
|
これが設定されている場合、100% 自動的にインストールできる port にのみ
|
|
動作します。
|
|
.It Va OPTIONS
|
|
定義されている場合、この port が受け付ける
|
|
.Va WITH_*
|
|
オプションのリストです。
|
|
.Em 注意 :
|
|
.Va OPTIONS
|
|
が実際にちゃんと動作するには、
|
|
.Va WITH_*
|
|
変数をテストし始める前に
|
|
.Pa bsd.port.pre.mk
|
|
をインクルードする必要があります。
|
|
.It Va DISABLE_VULNERABILITIES
|
|
定義されている場合、新規 port のインストール時に
|
|
.Xr portaudit 1
|
|
を使ったセキュリティ脆弱性のチェックを行ないません。
|
|
.El
|
|
.Sh 関連ファイル
|
|
.Bl -tag -width ".Pa /usr/ports/Mk/bsd.port.mk" -compact
|
|
.It Pa /usr/ports
|
|
デフォルトの port ディレクトリ
|
|
.No ( Fx
|
|
と
|
|
.Ox )
|
|
。
|
|
.It Pa /usr/pkgsrc
|
|
デフォルトの port ディレクトリ
|
|
.Pq Nx
|
|
。
|
|
.It Pa /usr/ports/Mk/bsd.port.mk
|
|
ご本尊様であらしゃいます。
|
|
.\" kahuna = 【名】ハワイ先住民の祈祷師
|
|
.\" big kahuna = お偉方、ボス、大物、偉いさん
|
|
.El
|
|
.Sh 関連項目
|
|
.Xr make 1 ,
|
|
.Xr pkg_add 1 ,
|
|
.Xr pkg_create 1 ,
|
|
.Xr pkg_delete 1 ,
|
|
.Xr pkg_info 1 ,
|
|
.Xr pkg_version 1
|
|
.Pp
|
|
次に示すものは ports コレクションの一部です:
|
|
.Pp
|
|
.Xr pib 1 ,
|
|
.Xr portcheckout 1 ,
|
|
.Xr portlint 1
|
|
.Rs
|
|
.%B "The FreeBSD Handbook"
|
|
.Re
|
|
.Pp
|
|
.Pa http://www.FreeBSD.org/ports
|
|
(port すべてが検索可能なインデックス)
|
|
.Sh 作者
|
|
.An -nosplit
|
|
このマニュアルページは、もともとは
|
|
.An David O'Brien
|
|
によるものです。
|
|
.Sh 歴史
|
|
ports コレクション
|
|
は、
|
|
.Fx 1.0
|
|
で登場しました。
|
|
その後、
|
|
.Nx
|
|
と
|
|
.Ox
|
|
にも広まりました。
|
|
.Sh バグ
|
|
port に関する文書が 4 か所に分散されてしまっています。
|
|
.Pa /usr/ports/Mk/bsd.port.mk
|
|
と
|
|
.%B "The Porter's Handbook"
|
|
と
|
|
.%B "The FreeBSD Handbook"
|
|
の
|
|
.Dq "Packages and Ports"
|
|
セクションと、
|
|
このマニュアルページ
|
|
の 4 つです。
|
|
.\"ZZZ: 3.0-RELEASE compliant by N. Kumagai, 98-12-26
|