MacPorts のインストール

mac っちうか、Xcode では単体テストを行うモジュールとして、OCUnit(Objective C向けのUnitTestフレームワーク)
とか、CPlusTest(C++ 向けのUnitTestフレームワーク)なんかが用意されています.

これらはビルドプロセスに組み込むことができるので、ビルドと同時にテストを行うことができ、テストが失敗したときには
エラーの表示を行うことなんかができるので、それはそれで便利なのですが、自称ライブラリアンとしては xcode 上で
しか利用できない単体テストフレームワークには不満があったりします.
(...ちうか単体テストを書きためて嬉しいのはライブラリだろ.だったら、テストフレームワークも移植性が高いものを
つかいたいよね)

そんなわけで、CppUnit の導入をためしてみたのですが、実行してみると EXC_EXCEPTION が発生して、思ったように
動いてくれない.

ネットで調べてみると、どうやら gcc4.x でコンパイルすると不具合があるらしいですよ.(真偽はしらん)

でもって、xcode tools をデフォルトインストールすると一緒にインストールされる gcc_select を利用して
gcc を切り替えて...なんて話がでてくるんですけど、私の環境(Mac OS X 10.5.5)には、gcc_select は
おろか gcc3.x すらインストールされません.

なんで、CppUnit 環境構築に先だって、 MacPorts環境を作ってしまいましょうってなことになりました.

MacPorts ってなに?

FreeBSDPorts というパッケージ管理システムのようなことを、mac 上で行うためのアプリケーションです.

...まぁ、windows でいうところの Cygwin インストーラーってところです.

MacPorts をインストールしておくと、UNIX系ツールのインストール/アンインストールが簡単に行えるように
なります.

MacPorts の入手

http://svn.macosforge.org/repository/macports/downloads/

から入手できる.

私は、環境に合わせて "MacPorts-1.7.0-10.5-Leopard.dmg" を落としてきた.

MacPorts のインストール

"MacPorts-1.7.0-10.5-Leopard.dmg" をダウンロードしてインストーラを実行すれば、インストール作業が
終わる.

MacPorts のファイルは

/opt/local/bin/

以下にインストールされる.

パスを通しておくため、 ~/.bashrc と ~/.bash_profile に書き込んでおく

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

パッケージリストなどの更新を行う.

[mymac]$ sudo port -d selfupdate
[mymac]$ sudo port -d sync

MacPorts の使い方

パッケージを探す

[mymac]$ sudo port search hogehoge

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

[mymac]$ sudo port install hogehoge

インストールされているパッケージの一覧

[mymac]$ sudo port installed

パッケージの削除

[mymac]$ sudo port uninstall

はじめからやりなおす

[mymac]$ sudo port uninstall installed

参考サイト

  • MacPortsでステキなUNIXツールをインストール - はこべにっき

http://d.hatena.ne.jp/hakobe932/20061208/1165646618

http://pastelwill.jp/wiki/doku.php?id=macports

ありがとうございました

おまけ

まだ、 CppUnit は利用できていません...orz
xcode 使っている人は、CppUnit 使わないのかなぁ...