
主項目頁面:https://emscripten.org
GitHub CI狀態:
鉻構建器狀態:Emscripten-Releases
Emscripten使用LLVM和BinaryE將C ++編譯為WebAssembly。 emscripten輸出可以在網絡上,node.js和wasm runtimes上運行。
Emscripten為流行的便攜式API(例如OpenGL和SDL2)提供網絡支持,從而允許移植複雜的圖形本機應用程序,例如Unity Game Engine和Google Earth。它可能也可以放置您的代碼庫!
儘管Emscripten主要專注於使用Clang編譯C ++,但可以將其與其他使用LLVM使用的編譯器集成(例如,Rust具有Emscripten Integration,以及wasm32-unknown-emscripten和asmjs-unknown-emscripten目標)。
Emscripten可根據2個許可證,MIT許可證和伊利諾伊大學/NCSA大學開源許可證獲得。
兩者都是允許的開源許可證,它們之間幾乎沒有任何實際差異。
提供兩者的原因是(1)MIT許可證是眾所周知的,適用於編譯器工具鏈,而(2)LLVM的原始許可證也提供了伊利諾伊大學/NCSA University Illinois/NCSA開源許可,以允許將Emscripten的代碼集成到LLVM中。在Emscripten改用LLVM WASM後端之後,第二個原因變得不那麼重要,此時,我們期望在項目之間來回移動任何代碼。同樣,LLVM重新定制為Apache 2.0 +異常。實際上,您可以將Emscripten視為MIT許可(這使您可以使用編譯器(包括商業和非商業用途)進行幾乎所有想要的事情)。
有關許可證的全部內容,請參見LICENSE 。