Rustを使ってみたよ

新言語Rustなんてでてるそうじゃあないですか。
ということで触ってみたのでした。以下はインストールしてから使うまでのメモです。
環境:MacOS 10.6.8

リポジトリをクローンしてくる

$ git clone git://github.com/mozilla/rust.git

サブリポジトリをいくつか持ってるみたいで、ちょっと時間がかかります。
それでもgitだから(なのかな?)早いけれど。

./configure

クローンできたらそのディレクトリへ移動して、makeまでの準備を。
あ、私はソースからコンパイルするたぐいのものはホームの特定のディレクトリに入れているので、
ここでは--prefixを指定していますが、普通なら指定しなくてもOKです。

$ mkdir -p $HOME/Binary/Rust/
$ ./configure --prefix=$HOME/Binary/Rust/

./configure中にLLVMリポジトリをcloneしてくるようで、これがまた時間がかかる……
./configureが終わったら後はmakeです。これもまた時間がかかるのですが。

make && make install

$ make && make install

でインストール。時間がかかr(ry

環境変数の設定

インストールした場所にパスを通すため、~/.bashrcを編集します。
Macの場合、普通だったら~/.bashrcじゃなくて~/.bash_profileかな?

# rust
export MANPATH=$HOME/Binary/Rust/share/man:$MANPATH
export PATH=$HOME/Binary/Rust/bin:$PATH

この内容で追記して保存をしたら、

$ source ~/.bashrc

で再読み込み。

$ rustc --help
$ man rustc

とかでいろいろ出るんじゃないでしょうか。

コンパイルしてみる

早速コンパイルしてみましょー。
公式サイトにあるコードを引用してます。

use std;
import std::io;

fn main() {
    for i in [1, 2, 3] {
        io::println(#fmt("hello %d\n", i));
    }
}

これをhello.rsとかって名前で適当な場所に保存します。
その後は、

$ rustc -o hello hello.rs
$ ls -F
hello hello.dSYM/
$ ./hello
hello 1

hello 2

hello 3

という感じ。
さー、この先生きのこる言語なのやらどうなのやら。


そういえばlib/にパスを通してないけど大丈夫なのかな……(ぼそ