I'm very pleased to announce the release of our new website and documentation using the new toolchain with Hugo and AsciiDoctor. To get more information about the new toolchain please read the FreeBSD Documentation Project Primer[1], Hugo docs[2] and AsciiDoctor docs[3]. Acknowledgment: Benedict Reuschling <bcr@> Glen Barber <gjb@> Hiroki Sato <hrs@> Li-Wen Hsu <lwhsu@> Sean Chittenden <seanc@> The FreeBSD Foundation [1] https://docs.FreeBSD.org/en/books/fdp-primer/ [2] https://gohugo.io/documentation/ [3] https://docs.asciidoctor.org/home/ Approved by: doceng, core
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
|