Mac で動く D 言語の実装は、GDC のみです。あるプログラムを書こうとして、std.getopt がないことに気付き、がっくり来ました。
std.getopt は、最近実装されたライブラリのようで DMD 2 にしか入っていません。いろいろ調べた結果、SVN の GDC は DMD 2 に対応しているようだったので、取って来てコンパイルしてみました。
次に適当なところから GCC を入手します。僕は、gcc-core-4.1.2.tar.bz2 を使いました。
% bunzip2 -c gcc-core-4.1.2.tar.bz2 | tar xvf -
% cd gcc-4.1.2
gcc-4.1.2% cp -r $(パス)/dgcc/trunk/d gcc
あとは、INSTALL に従って、コンパイルするだけです。後でさくっと消せるように、/usr/gdc にインストールすることにしました。
gcc-4.1.2% ./gcc/d/setup-gcc.sh --d-language-version=2
gcc-4.1.2% ./configure --prefix=/usr/gdc --enable-languages=d
gcc-4.1.2% make
gcc-4.1.2% sudo make install
仕上げで PATH に /usr/gdc を通せば OK です。
Mac でも std.getopt が使えるようになって幸せです。
課題
以下のリンクエラーは、まだ消す方法が分りません。
indirect jmp without `*'