Mac OS X チューニングメモ 3 ( MacPort )

MacPorts関連

  • MacPortsのインストール

MacPortsはMac OS X向けに開発されたパッケージ管理システムで、Ubuntuのapt-getのようなコマンドになる。インストールしたいアプリケーションとそれに密接に関係するアプリケーションやライブラリのソースコードをダウンロードした後、自動でビルドしてインストールを行う。

現段階で10,000近いソフトウェアが登録されている。Mac OS Xのバージョンごとに適切なバージョンのXcodeとX11環境が必要。

  • MacPortsのインストールイメージのダウンロードURL
    http://www.macports.org/install.php

  • ローカル環境にコマンドやツールがインストールされているかどうかの確認

whichコマンドでどこにインストールされているかわかる。

$ which [コマンド名]
  • パッケージの検索

searchは部分一致で検索するので、ワイルドカードは不要。

$ sudo port search [パッケージ名]

下記では、opensslパッケージを検索。沢山ヒットする。

$ sudo port search openssl
fbopenssl @0.0.4 (devel)
SPNEGO library
lua-luasec @0.4 (devel)
    LuaSec is a binding for OpenSSL library to provide TLS/SSL communication
 
openssl @1.0.1c (devel, security)
    OpenSSL SSL/TLS cryptography library
 
openssl97 @0.9.7m (devel, security)
    OpenSSL SSL/TLS cryptography library
     :
Found N ports
$
  • パッケージのインストール

インストール時に入力するパッケージ名は、完全一致する名称を入力する必要がある。なのでsearchでヒットしたパッケージがすべてインストールされてしまうことはない。

パッケージ名はsearchコマンドで表示された@前の名称を入力する。しばらくすると、ダウンロードをインストールをまとめて実行してくれる。正常終了すれば、以降すぐに使えるようになる。

$sudo port install [パッケージ名]
  • パッケージのインストールオプションの確認

portコマンドでインストールする場合、バイナリファイルを配置するのではなく、ソースをダウンロードしてローカルでビルドしている。このビルドのときにオプションを追加することができる。パッケージに対してどんなオプションがあるかをインストール前に確認できる。

$sudo port variants [パッケージ名]

たとえば、subversionパッケージのオプションを表示してみると、

$ sudo port variants subversion
subversion has the variants:
bash_completion: Completion support for bash
disable_keychain: Disables support for the Mac OS X Keychain
mac_os_x_server_mod_dav_svn: Unsupported - attempt to build the subversion
                            apache module with apple supplied apache2
mod_dav_svn: Install the subversion apache module (mod_dav_svn)
no_bdb: Build without support for BerkeleyDB repositories
no_neon: Build without neon (http/https support)
tools: Install some optional extra subversion tools
unicode_path: Installs a hack to workaround Mac OS X unicode path issues
universal: Build for multiple architectures

ビルドオプションを追加する場合は(プラス)でオプション名をパッケージ名の後ろに追加してインストールする。

$ sudo port install [パッケージ名] + [オプション] + [オプション]
  • どんなパッケージがインストールされているか確認

実行すると、パッケージ名とそのバージョンが列挙される。

$ sudo port installed
  • パッケージのインストールパスを確認する

実行すると、パッケージ名とそのバージョンが列挙される。

$ port contents [パッケージ名] 
  • インストールされているパッケージに関して、最新版がUPされているか確認

事前にport selfupdateを実行して、情報を更新しておく必要がある。

$ port outdated
  • インストールされているパッケージのアップグレード
$sudo port upgrade [パッケージ名] 

$sudo port upgrade installed 全てのインストール済みパッケージをアップグレードする
  • パッケージのアンインストール

ローカルにインストールされたアプリケーションを削除する。

$sudo port uninstall [パッケージ名]