Install and update instruction.
MacPortsを使った制作環境の構築の前に必要なXcodeをインストールしてから作業開始。
XcodeとMacPortsのインストール後は、基本的に「ターミナル」によるコマンド操作になる。
developer.apple.comから最新版をダウンロード(http://developer.apple.com/technology/tools.html)してインストール。
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/)。
インストールが終わったらターミナルを起動し、以下のコマンドで最新版にアップデート。
$ sudo port selfupdate
$ sudo port sync
ここまででMacPortsの環境が完成(あくまでも入れ物ができただけ)。
※実際の環境構築の手順は別ページに記載。
以下は、MacPortsの基本的な操作のためのコマンドの解説になる。
MacPortsの基本的なコマンド。
インストールするパッケージの情報確認、検索、依存するパッケージなどの確認のコマンド。
※この辺のコマンドは「sudo」でやる必要はない。
$ port search pkg-name
または、ワイルドカード指定で
$ port search keyword*
$ port info pkg-name
「+」を付けてインストール時のオプションを指定することができる。
$ port variants pkg-name
$ port deps pkg-name
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
インストール時にトラブルが起きた時の対処法。
一度既にインストールされているパッケージをアンインストールし、再度インストールしてみる。
そこまでのインストール作業をクリーンにしてから再度やり直す。
$ sudo port clean pkg-name
インストール済みのパッケージのリスト表示やアップデートチェック、パッケージのアップグレードのコマンド。
パッケージを一覧でリスト表示するコマンド。
$ port installed
アップデートされたパッケージがないか確認するコマンド。
$ port outdated
パッケージをアップデートするコマンド。
そのままでは、以前のバージョンのパッケージがディアクティベートされるだけなので、「-u」オプションを付けてアップデートした方が良いかも。
※依存するファイルを無視するには「-n」オプションを付ける。
$ port upgrade pkg-name $ port upgrade -u pkg-name
更新されたパッケージ全てをアップデートするには以下で。
$ port upgrade outdated
MacPortsをアンインストールする時は以下の手順で。
基本的に「/opt」のディレクトリを削除するだけだが、その前に下記のコマンドを実行してから。
起動時に実行されるデーモンとして動いているApache2などをアンロード。
$ find /Library/LaunchDaemons/org.macports.* -print0 | sudo xargs -0 -L1 launchctl unload -w
ディレクトリを削除する前に一度下記のコマンドを実行する。
$ sudo port deactivate active
あとは「/opt」ディレクトリをゴミ箱に捨てればお終い。
コマンドやオプション指定がわからないときは、MacPortsのサイトもしくは下記のコマンドで。
$ port help
$ man port