This is an archive of past FreeBSD releases; it's part of the FreeBSD Documentation Archive.

Ports Collection の利用

4.2. Ports Collection の利用

このセクションでは、Ports Collection を利用してシステムにプログラムをインストールしたり、 システムから削除したりする基本的な手順について説明します。

4.2.1. ports のインストール

一番最初に知らなければならないのは、 Ports Collection は "スケルトン" と呼ばれるもので構成されているという事実です。 port スケルトンは簡単に言うと、アプリケーションを FreeBSD 上でコンパイルしインストールするために必要となる最小限のファイルのセットのことです。 それぞれの port スケルトンには、次のファイルが含まれています。

さて、Ports Collection が何を目的として使われるものなのか、 それ理解するための基礎的な知識はこれで十分です。 最初の port をインストールする準備ができました。 port のインストールには二つの方法があります。

実際の作業に入る前に、 インストールする port を選ぶ必要があります。 選ぶ方法はいくつかありますが、最も簡単なのは FreeBSD ウェブサイトの ports リストを利用することでしょう。 そこにリストされている ports や、 サイトの検索機能を使って閲覧することができます。 各々の port には説明文が含まれていますので、 インストールを決める前にその port に関する説明を読むこともできます。

もう一つの方法は、whereis コマンドを使うことです。 whereis コマンドを使うには、 プロンプトから単に "whereis <インストールしたいプログラム名>" と入力します。 もし、あなたのシステム上でプログラムが見つかれば、 それがどこにあるのかが次のように表示されます。

    # whereis xchat
    xchat: /usr/ports/irc/xchat
    #

この表示は、xchat (irc クライアントの一つ) が /usr/ports/irc/xchat というディレクトリに見つかったことを示しています。

また、Ports Collection の持つ検索機能を利用して port を検索する方法もあります。 この検索機能を利用するには、カレントディレクトリが /usr/ports である必要があります。 そのディレクトリに移動したら、 make search key=プログラム名 と入力してください。 "プログラム名" の部分には検索したいプログラム名を入れます。 たとえば、xchat を探したい場合には次のようにします。

    # cd /usr/ports
    # make search key=xchat
    Port:   xchat-1.3.8
    Path:   /usr/ports/irc/xchat
    Info:   An X11 IRC client using the GTK+ toolkit, and optionally, GNOME
    Maint:  jim@FreeBSD.org
    Index:  irc
    B-deps: XFree86-3.3.5 bzip2-0.9.5d gettext-0.10.35 giflib-4.1.0 glib-1.2.6 gmake-3.77 gtk-1.2.6
            imlib-1.9.8 jpeg-6b png-1.0.3 tiff-3.5.1
    R-deps: XFree86-3.3.5 gettext-0.10.35 giflib-4.1.0 glib-1.2.6 gtk-1.2.6 imlib-1.9.8 jpeg-6b
            png-1.0.3 tiff-3.5.1

出力のうち特に注意して見なければならないのは "Path" という行です。 この行は xchat がどこにあるかを示しています。 出力される他の情報は port をインストールする際には直接必要となるものではありませんので、 ここでは触れないでおきます。

Note: ports をインストールするには、 root ユーザにならなければなりません。

インストールしたい port が見つかったら、 実際のインストールに移ることができます。

4.2.1.1. CD-ROM からのコンパイル

タイトルから想像できると思いますが、 このセクションで説明する内容は、FreeBSD の CDROM セットを持っていることを前提としています。 もし CDROM セットを持っていなければ、 FreeBSD Mall で注文することができます。

FreeBSD CDROM がドライブに挿入されていて、 /cdrom (マウントポイントは必ず /cdrom でないといけません) にマウントされていれば、port をインストールすることができます。 まず、カレントディレクトリをインストールしたい port のあるディレクトリに変更してください。

    # cd /usr/ports/irc/xchat

xchat ディレクトリに移動すると、 port スケルトンがあるのが確認できると思います。 次に行なうのは、port のコンパイル (構築、ビルド (build) とも呼ばれます) です。 これは、プロンプトから単に make と入力するだけで行なえます。 そうすると、次のような出力が現われるはずです。

    # make
    >> xchat-1.3.8.tar.bz2 doesn't seem to exist on this system.
    >> Attempting to fetch from file:/cdrom/ports/distfiles/.
    ===>  Extracting for xchat-1.3.8
    >> Checksum OK for xchat-1.3.8.tar.bz2.
    ===>   xchat-1.3.8 depends on executable: bzip2 - found
    ===>   xchat-1.3.8 depends on executable: gmake - found
    ===>   xchat-1.3.8 depends on shared library: gtk12.2 - found
    ===>   xchat-1.3.8 depends on shared library: Imlib.5 - found
    ===>   xchat-1.3.8 depends on shared library: X11.6 - found
    ===>  Patching for xchat-1.3.8
    ===>  Applying FreeBSD patches for xchat-1.3.8
    ===>  Configuring for xchat-1.3.8
    ...
    [configure output snipped]
    ...
    ===>  Building for xchat-1.3.8
    ...
    [compilation snipped]
    ...
    #

コンパイルが終了してプロンプトに戻ることを確認してください。 次に port をインストールを行ないます。 port をインストールするのに必要なのは、 make コマンドに一つの単語、 install を指定することだけです。

    # make install
    ===>  Installing for xchat-1.3.8
    ===>   xchat-1.3.8 depends on shared library: gtk12.2 - found
    ===>   xchat-1.3.8 depends on shared library: Imlib.5 - found
    ===>   xchat-1.3.8 depends on shared library: X11.6 - found
    ...
    [install routines snipped]
    ...
    ===>   Generating temporary packing list
    ===>   Installing xchat docs in /usr/X11R6/share/doc/xchat
    ===>   Registering installation for xchat-1.3.8
    #

プロンプトに戻ったら、 インストールしたプログラムは実行できるようになっています。

Note: makemake install と二つに分けられた手順の代わりに、 最初から make install と実行することで、 手順の二番目の操作を省くことができます。

Note: port には CDROM への収録を許可しないライセンス条項を持つものがあることに 注意してください。 これにはダウンロード前に登録を必要としたり、 再配布が禁止されているなどというさまざまな理由があります。 CDROM に含まれていない port をインストールしたい場合には、 ネットワークに接続する必要があります (次のセクションをご覧ください)。

4.2.1.2. インターネット経由での ports のコンパイル

前セクションと同じように、このセクションでは、 インターネットへの接続が可能であることを前提としています。 もしインターネット接続が不可能な場合は、 CDROM からのインストールが必要になるでしょう。

インターネット経由で port をインストールする方法は、 CDROM からインストールする場合と完全に同じです。 唯一異なる部分はプログラムのソースコードを CDROM からではなく、 インターネット経由でダウンロードするということです。

次のように、必要な手順は同じです。

    # make install
    >> xchat-1.3.8.tar.bz2 doesn't seem to exist on this system.
    >> Attempting to fetch from http://xchat.org/files/v1.3/.
    Receiving xchat-1.3.8.tar.bz2 (305543 bytes): 100%
    305543 bytes transferred in 2.9 seconds  (102.81 Kbytes/s)
    ===>  Extracting for xchat-1.3.8
    >> Checksum OK for xchat-1.3.8.tar.bz2.
    ===>   xchat-1.3.8 depends on executable: bzip2 - found
    ===>   xchat-1.3.8 depends on executable: gmake - found
    ===>   xchat-1.3.8 depends on shared library: gtk12.2 - found
    ===>   xchat-1.3.8 depends on shared library: Imlib.5 - found
    ===>   xchat-1.3.8 depends on shared library: X11.6 - found
    ===>  Patching for xchat-1.3.8
    ===>  Applying FreeBSD patches for xchat-1.3.8
    ===>  Configuring for xchat-1.3.8
    ...
    [configure output snipped]
    ...
    ===>  Building for xchat-1.3.8
    ...
    [compilation snipped]
    ...
    ===>  Installing for xchat-1.3.8
    ===>   xchat-1.3.8 depends on shared library: gtk12.2 - found
    ===>   xchat-1.3.8 depends on shared library: Imlib.5 - found
    ===>   xchat-1.3.8 depends on shared library: X11.6 - found
    ...
    [install routines snipped]
    ...
    ===>   Generating temporary packing list
    ===>   Installing xchat docs in /usr/X11R6/share/doc/xchat
    ===>   Registering installation for xchat-1.3.8
    #

ご覧のとおり、 出力の違いはシステムがどこから port を入手したか示す行だけです。

以上が、システムに ports をインストールするために必要な操作です。 次のセクションでは、システムにインストールされている port を削除する方法について学びます。

4.2.2. インストールされた ports の削除

ports のインストール方法について知ればおそらく、 インストールの後になって、それが間違っていたことに気付いた時などに備えて それらを削除する方法はどうすれば良いのか疑問に感じることでしょう。 ここでは、その削除の方法について扱います。

さて、前の例 (例のまま何も変更していない人は xchat) を削除してみましょう。ports のインストールと同じように、 まず最初にやらなければならないのは port のディレクトリに移動することです。 port のディレクトリは /usr/ports/irc/xchat でしたね。 ディレクトリを移動したら、xchat を削除するのに必要な準備は終わりです。 削除するには、make deinstall コマンド (わかりやすいですよね?) を実行します。

    # cd /usr/ports/irc/xchat
    # make deinstall
    ===>  Deinstalling for xchat-1.3.8
    #

極めて簡単な作業です。 これでうまく xchat をシステムから削除することができました。 もう一度再インストールしたい場合には、 /usr/ports/irc/xchat から make reinstall を実行することで行なうことができます。