DMDのダウンロード

今回使用するのは、Digital Mars社のD言語コンパイラdmdのWin32用(Digital Mars - D Compiler)。 バージョンは「v0.86」。

Win32版

「Win32 D Compiler」の所にある「D compiler for Win32」と「linker and utilities for Win32」をダウンロードする。 ちなみに、インストール環境はWindows XP Home Edition SP1.

インストール

dmd.zip(D Compiler)とdmc.zip(linker and utilities)を解凍し、dmc.zipに含まれるdmフォルダを、dmd.zipを解凍して出来たフォルダにあるdmフォルダに上書き。 今回はC:\dmd\フォルダにインストール。

環境変数の設定

解凍したdmd\binへのパスを通す。(環境変数のpathに解凍したdmd\binへのフルパスを追加する) 今回の例では「C:\dmd\dmd\bin」を追加。
また、ライブラリのあるフォルダdmd\libおよびdm\libへのパスを通す。 今回の例では「C:\dmd\dmd\lib;C:\dmd\dm\lib;」を追加。

コンパイル方法

コンパイルするには、適当にソースファイルを作って(ここではtest.dと仮定)

dmd test.d

とすれば完成。 test.exeという実行可能形式のファイルが作成される。

Linux版

「Linux D Compiler」の所にある「D compiler for Linux」をダウンロードする。 ちなみに、インストール環境はWindows XP Home Edition SP1.

インストール

ダウンロードしたzipファイルを解凍する。 今回の例では/usr/local/dmdに解凍することにする。

unzip dmd.zip

次に、解凍してできた/dmd/bin/dmd.confを次のように編集し、phobosのソースがあるパスを書き込む。

[Environment]
                                                                              
DFLAGS=-I/usr/local/dmd/dmd/src/phobos

続いて、編集したdmd.confを/etcへコピーする。

cp dmd.conf /etc

dmd、obj2asm、dumpobjの三つのファイルに対して実行権限を与える。

chmod u+x dmd obj2asm dumpobj

実行ファイルを/usr/local/binへコピーするか、環境変数PATHにdmd/binを追加する。 環境変数をいじる場合は、/etc/profileを開き、最下行に以下のような記述を追加する。

export DMD_HOME=/usr/local/dmd/dmd
export PATH=$PATH:$DMD_HOME/bin

仕上げとして、ライブラリファイルdmd/lib/libphobos.aを/usr/libへコピーする。

cp libphobos.a /usr/lib

コンパイル

コンパイルするには、適当にソースファイルを作って(ここではtest.dと仮定)

dmd test.d

とすれば完成。 testという実行可能形式のファイルが作成される。 たとえば、次のようなコードがtest.dに記述されているとすると、

import std.stream;

int main(char[][] args)
{
        stdout.writeLine( "Hello, world!" );

        return 0;
}

次のようにコンパイル、出力される。

# dmd test.d
gcc test.o -o test -lphobos -lpthread -lm
# ./test
Hello, world!