読者です 読者をやめる 読者になる 読者になる

0x90

一回休み

WSL上のUbuntuでRust+Emscriptenを試す

rust WSL

そろそろ本気でJavascriptを書きたくないので、Emscriptenを試してみます。Cもあんまり書きたくないしC++は言わずもがななので、Rustを試してみます。

手元のパソコンがWindowsだったので、WSL上でやってみました。

Emscriptenのインストール

最新版を入れないといけません。aptは使えません。

まずはcmakeの最新版を入れます。

$ wget https://cmake.org/files/v3.7/cmake-3.7.2-Linux-x86_64.sh
$ bash cmake-3.7.2-Linux-x86_64.sh
$ echo 'export PATH=$PATH:~/cmake-3.7.2-Linux-x86_64/bin' >> ~/.bashrc
$ . ~/.bashrc

次にemsdkを入れます。

$ curl -O https://s3.amazonaws.com/mozilla-games/emscripten/releases/emsdk-portable.tar.gz
$ tar -xzf emsdk-portable.tar.gz
$ source emsdk_portable/emsdk_env.sh
$ emsdk update
$ emsdk install sdk-incoming-64bit
$ emsdk activate sdk-incoming-64bit

clangをビルドするのでinstallにすごく時間がかかります。ディスク容量も最終的に21GBくらい消費します。aptのemscriptenのバージョンが早く上がってほしいですね。

Rustのインストール

stableの最新版でOKです。

テスト

fn main() {
    println!("Hello, world!");
}
$ rustc --target=asmjs-unknown-emscripten helloworld.rs
$ node helloworld.js
Hello, world!

初回のビルドには死ぬほど時間がかかります(多分ライブラリをビルドしている)が、二回目以降は早くなります。

実戦投入等はのちほど。