LoginSignup
1
0

More than 3 years have passed since last update.

VSCode + Docker で C++ 使って WASM の開発環境構築

Posted at

ことの発端

VSCode + Docker で C++ の開発環境が簡単に構築できたので、そのまま、WASMの開発環境も作ってしまえということで、メモ書きです。

手順

1. コンテナ作成〜CMakeLists.txt作成

前に投稿させていただいた「C++の開発環境をDockerで構築してVSCodeでリモート開発 」の手順で進めますが、Docker ファイルを下記のファイルに差し替えてください。1

Dockerfile
FROM ubuntu:18.04
RUN apt-get update \
 && apt-get install -y build-essential gdb cmake git python3 \
 && git clone https://github.com/emscripten-core/emsdk.git \
 && cd emsdk \
 && ./emsdk install latest \
 && ./emsdk activate latest \
 && echo 'source "/emsdk/emsdk_env.sh"' >> $HOME/.bashrc

コンテナのビルドやっちゃった人は、Dockerfile を上のように書き換えて [F1] でコマンドパレットを表示させてRemote-Containers: Revuild Containerを実行すれば、コンテナをリビルドしてくれます。(便利だ〜)
image.png

2. CMakeLists.txt に追加

CMakeLists.txt に下記の行を追加します。

CMakeLists.txt
set(CMAKE_EXECUTABLE_SUFFIX ".html")

こいつを指定しないと html を自分で書くことになります。

3. emscripten 用のビルドフォルダを作成してビルド

下記の順にコマンドを実行

mkdir build.em
cd build.em
emcmake cmake ..
make

4. 実行

ブラウザのセキュリティ設定によりますが、大概はローカルファイルだとwasmのロードでエラーして動かないと思います。
なので、VSCodeの拡張機能 Live Server : ritwickdey.liveserver をインストールします。インストールすると、右下に Go Live が表示されるので、こいつを押下します。
image.png

ブラウザにファイル一覧が表示されると思うので、build.em フォルダをクリックして、htmlファイルをクリックします。
image.png
こんな感じで表示されれば完成です。


  1. 本家の手順では .bash_profile に環境設定を追加していますが、.bashrc に追加する変更を加えてます。(参照記事: https://teratail.com/questions/45915 ) 

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0