기본 콘텐츠로 건너뛰기

4월, 2017의 게시물 표시

Rust를 Webassembly로 컴파일 하기

Rust를 Webassembly로 컴파일 하는 방법과 방법을 정리 해 둔다.

환경 구축이라 순차적으로 따라하면 될것 같지만, 막상 해 보면 시간도 오래 걸리고 잘 안된다. 컴파일 환경 구축 부터 Cargo 로 빌드하는 방법 까지 정리 해 둔다.
OS 선택 Rust와 Emscripten이 설치 되는 OS면 된다. Rust는 Windows, Mac, Ubuntu OS에서 실행 되는 것을 확인 했지만 Emscripten은 우분투 최신 버전과 14.04에서만 테스트를 해 보았기 때문에 최신 Ubuntu 기준으로 정리를 해둔다.
Docker Image 만들어 두면 편할 것 같았는데, 막상 컴파일 환경을 이미지로 빌드하고 보니 이미지 크기가 25GB를 넘는 문제가 있다. Rust 설치 Rust 설치와 Cargo에 대한 설명은 Cargo 패키지 시스템 - Cargo로 프로젝트 생성부터 배포까지 참고 안정된 Rust 버전과 wasm32 타겟 설치rustup install stable rustup default stable rustup target add wasm32-unknown-emscripten Emscripten 설치 참고:  http://kripken.github.io/emscripten-site/docs/building_from_source/building_emscripten_from_source_on_linux.html#building-emscripten-on-linux
우분투 14.04에서는 설치 중에 cmake 버전 때문에 문제가 생긴다. cmake 최신 버전을 설치 해주면 문제 없다.
최신 우분투에서는 아래 순으로 진행하면 된다. docker에서 실행 한 순서 이기 때문에 sudo로 실행하지 않는다. apt-get update apt-get install build-essential apt-get install cmake apt-get install python2.7 apt-get install nodejs apt-get…