http://guide.macports.org/
# 昔は、時々自分が何を使っている忘れて、複数のパッケージシステムを入れて混乱したりしました。
MacPortsは、バイナリを配布するのではなく、ソースをダウンロードして、コンパイルするタイプのパッケージ管理システムです。そのため、コンパイラが必要です。OSXの場合は、Xcodeが必要になります。そのため、Xcodeをインストールしておくことが必須です。
さて、Lionにしてからパッケージのアップデートしてませんでしたので、やってみました。以下の手順です。
- リポジトリ情報を最新にする
- インストール済みのport(パッケージ)を最新にする
リポジトリ情報の更新
CodeRider:~ baker$ sudo port selfupdate Password: ---> Updating MacPorts base sources using rsync MacPorts base version 2.0.3 installed, MacPorts base version 2.0.3 downloaded. ---> Updating the ports tree ---> MacPorts base is already the latest version The ports tree has been updated. To upgrade your installed ports, you should run port upgrade outdated
selfupdateコマンドは、公開されているMacPortsのリポジトリで、ローカルのportsを更新するために使われます。結果、ローカルのportsは、最新のヴァージョンになります。このコマンドは、またMacPorts基盤 ( MacPorts base)の最新バージョンをチェックし、必要であれば最新のものに、アップグレードします。(macports.org コマンド解説 3.1.2. selfupdate)
つまり、selfupdateでは、リポジトリの情報のみがアップデートされて、既にインストールされているパッケージが更新されるわけではないと言うことです。ただし、ローカルで利用するportとか、MacPortsのコマンド群(MacPorts Base)は、このタイミングで最新版に更新されます。
パッケージの更新
インストール済みのパッケージを全て最新版にします。upgradeコマンドを使うのですが、upgradeコマンドは、デフォルトの使用では、更新されたパッケージを削除しません。非アクティブにするだけです。(非アクティブについては、Package Image, Destroot, Activate Phasesの項を参照してください)もし、古いportを削除したいのであれば、uオプションを使用しましょう。
(macports.org コマンド解説 3.1.15. upgrade Note)
なので、uオプションを使用して、古いportは削除し、新しいものに入れ替えました。もちろんアップグレード可能なもののみの話ですが。
CodeRider:~ baker$ sudo port -u upgrade outdated ---> Computing dependencies for gdbm ---> Fetching archive for gdbm ---> Attempting to fetch gdbm-1.10_1.darwin_11.x86_64.tgz from http://packages.macports.org/gdbm ---> Fetching gdbm ---> Attempting to fetch gdbm-1.10.tar.gz from ftp://ftp.dti.ad.jp/pub/GNU/gdbm ---> Attempting to fetch gdbm-1.10.tar.gz from http://distfiles.macports.org/gdbm ---> Verifying checksum(s) for gdbm ---> Extracting gdbm ---> Configuring gdbm ---> Building gdbm ---> Staging gdbm into destroot ---> Installing gdbm @1.10_1 ---> Cleaning gdbm ---> Computing dependencies for gdbm ---> Deactivating gdbm @1.9.1_0 ---> Cleaning gdbm ---> Activating gdbm @1.10_1 ---> Cleaning gdbm ---> Uninstalling gdbm @1.9.1_0 ---> Cleaning gdbm (途中、たくさん省略)
古いportがクリーンされてますね。
コンパイルするので、少し時間が掛かりましたが、無事 終了です。
0 件のコメント:
コメントを投稿