MacPorts on OS X Leopard

Install and update instruction.

Download and Install

MacPortsを使った制作環境の構築の前に必要なXcodeをインストールしてから作業開始。
XcodeとMacPortsのインストール後は、基本的に「ターミナル」によるコマンド操作になる。

Xcode Tools

developer.apple.comから最新版をダウンロード(http://developer.apple.com/technology/tools.html)してインストール。

MacPorts

MacPortsの公式サイトから.dmgをダウンロード(http://www.macports.org/install.php)してインストール。

ちなみに今回使用したバージョンは、Version 1.7.1。

※これ以外のバージョンでは必ずしもこの通りになるとは限らないので注意。
※インストール先を「/opt」以外にする時は、ソースからコンパイル、インストール。

最新版ではインストールが終わると、自分のホームディレクトリに「.profile」が作成され自動的にインストール先のパスが追加される。
※以前のような「.bash_profile」への追加は必要ない(Leopardだからか?)。

確認するにはターミナルを起動して、以下のコマンドを入力。それぞれの行末でリターン。

$ cd ~
$ cat .profile

自分のホームディレクトリにある「.profile」を表示すると、以下のようにPATHとMANPATHの場所が追加されているはず。

# MacPorts Installer addition on 日付: adding an appropriate PATH variable for use with MacPorts.
export PATH=/opt/local/bin:/opt/local/sbin:$PATH
# Finished adapting your PATH environment variable for use with MacPorts.

# MacPorts Installer addition on 日付: adding an appropriate MANPATH variable for use with MacPorts.
export MANPATH=/opt/local/share/man:$MANPATH
# Finished adapting your MANPATH environment variable for use with MacPorts.

※UNIX系のコマンドは、通常「/bin」「/usr/bin」「/usr/sbin」「/usr/local/bin」などに配置される。
※MacPortsの場合は、OS内部のコマンドを置き換えたりしないよう、MacPorts専用の別環境として「/opt」以下に配置される。

上記の記述がないと、MacPortsのportコマンドを実行しても「command not found」が返される。
つまりいつまで経っても何もできないということになる。

そんなことにならないようコマンドの場所(PATH)を登録して、シェルに教えてあげる必要があるということになる。

※「そもそも.profileがない」「.profileに追加されていない」場合は、この次の「export」から始まる2行を「.bash_profile」または「.profile」に追加する。
※「.(ドット)」で始まるファイルは、Finder上で探しても不可視になっているため、そもそも存在しているかどうかは以下のコマンドで確認。

$ ls -a

見つかったら「vi」などで追加する(viの使い方はマニュアルでも読みましょう)。

export PATH=/opt/local/bin:/opt/local/sbin:$PATH
export MANPATH=/opt/local/share/man:$MANPATH

それでもコマンドが読み込めない場合は、上の記述を追加した後ログインし直してみる。

詳細は公式サイトのドキュメントを参照(http://guide.macports.org/)。

Update MacPorts Environment

インストールが終わったらターミナルを起動し、以下のコマンドで最新版にアップデート。

$ sudo port selfupdate
$ sudo port sync

ここまででMacPortsの環境が完成(あくまでも入れ物ができただけ)。
※実際の環境構築の手順は別ページに記載。

以下は、MacPortsの基本的な操作のためのコマンドの解説になる。

MacPorts Commands

MacPortsの基本的なコマンド。

Show Package Information, Search package and Check dependencies...

インストールするパッケージの情報確認、検索、依存するパッケージなどの確認のコマンド。
※この辺のコマンドは「sudo」でやる必要はない。

パッケージの検索

$ port search pkg-name

または、ワイルドカード指定で

$ port search keyword*

パッケージの情報表示

$ port info pkg-name

パッケージのインストールオプションの確認

「+」を付けてインストール時のオプションを指定することができる。

$ port variants pkg-name

パッケージの依存関係の確認

$ port deps pkg-name

Install and Uninstall packages

MacPortsのportコマンドを使ったパッケージの追加と削除のコマンド。

ここからは「sudo」を付け、root権限でコマンドを実行する。

$ sudo コマンド
password: (自分のパスワードを入力してリターン)

いちいち指示が面倒なら「sudo -s」を一度実行し、一時的にrootになっておくと楽。

$ sudo -s

こうすることで意図しないパーミッションエラーを防ぐことができる。
いちいち「sudo」を付けなくてよくなるため、以降の説明中のコマンドから「sudo」を取り除いて構わない。
※元に戻る(通常アカウントに戻る)ためには「ctrlキー+d」を入力。

パッケージのインストール

パッケージを追加するためのコマンド。「+」でvariantsを指定できる(連続して繋げて複数指定可)。

$ sudo port install pkg-name
$ sudo port install pkg-name1 pkg-name2
$ sudo port install pkg-name +variants
$ sudo port install pkg-name +variants1+variants2

以下の記述のように、複数のパッケージをオプション付きでまとめてインストールすることもできる。

$ sudo port install pkg-name1 +variants1+variants2 pkg-name2 +variants

パッケージのアンインストール

パッケージを削除するためのコマンド。
※複数のバージョンが混在してパッケージ名だけで削除できない場合は、@も含めたパッケージ名で指定する。

$ sudo port uninstall pkg-name

または、インアクティブなものを以下で削除可能。

$ sudo port -uf uninstall pkg-name

TroubleShooting

インストール時にトラブルが起きた時の対処法。

既にパッケージがインストール済みでインストールできない場合

一度既にインストールされているパッケージをアンインストールし、再度インストールしてみる。

一度実行してエラーが出た後、必ずエラーになる場合

そこまでのインストール作業をクリーンにしてから再度やり直す。

$ sudo port clean pkg-name

Listing installed packages and Update Check, Upgrade

インストール済みのパッケージのリスト表示やアップデートチェック、パッケージのアップグレードのコマンド。

インストール済みのパッケージの確認

パッケージを一覧でリスト表示するコマンド。

$ port installed

インストールされたパッケージの更新チェック

アップデートされたパッケージがないか確認するコマンド。

$ port outdated

パッケージのアップデート

パッケージをアップデートするコマンド。
そのままでは、以前のバージョンのパッケージがディアクティベートされるだけなので、「-u」オプションを付けてアップデートした方が良いかも。
※依存するファイルを無視するには「-n」オプションを付ける。

$ port upgrade pkg-name
$ port upgrade -u pkg-name

更新されたパッケージ全てをアップデートするには以下で。

$ port upgrade outdated

Uninstall MacPorts

MacPortsをアンインストールする時は以下の手順で。
基本的に「/opt」のディレクトリを削除するだけだが、その前に下記のコマンドを実行してから。

Unload Daemons

起動時に実行されるデーモンとして動いているApache2などをアンロード。

$ find /Library/LaunchDaemons/org.macports.* -print0 | sudo xargs -0 -L1 launchctl unload -w

Remove /opt Directory

ディレクトリを削除する前に一度下記のコマンドを実行する。

$ sudo port deactivate active

あとは「/opt」ディレクトリをゴミ箱に捨てればお終い。

Help

コマンドやオプション指定がわからないときは、MacPortsのサイトもしくは下記のコマンドで。

$ port help
$ man port
 
macports-on-leopard.txt · 最終更新: 2009/05/26 19:30 by komori, masaaki
 
特に明示されていない限り、本Wikiの内容は次のライセンスに従います:CC Attribution-Noncommercial-Share Alike 3.0 Unported
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki