Skip to content
Emscripten: An LLVM-to-JavaScript Compiler
C C++ JavaScript LLVM Shell HTML Other
Find file
Latest commit 42fb486 @kripken 1.35.0
Failed to load latest commit information.
cmake/Modules Advertise CMAKE_SYSTEM_PROCESSOR=x86 when building with CMake (as opp…
docs Merge pull request #2151 from haneefmubarak/cleanup
media remove extraneous eps since we have svg
site Fix broken links in downloads.rst. Closes #3847.
src fix out of memory abort message
system fix out of memory abort message
tests make browser.test_sdl2_ttf not use hardware acceleration, which shoul…
third_party remove temporary debug code for test_wasm_polyfill_prototype
tools Merge pull request #3848 from juj/get_clang_native_env
.gitignore Add new option for file_packager.py to store metadata externally.
AUTHORS fix #3777: make `-l SDL` do the same thing as `-lSDL` like Clang
CONTRIBUTING.md fix contributing link
ChangeLog.markdown Update ChangeLog.markdown to 1.34.12.
LICENSE update year to 2014
README.md Merge branch 'patch-1' of github.com:dandv/emscripten into incoming
em++ do not use an env var to communicate c++ mode
em++.bat Fix python spawn scripts on Windows when the emscripten path contains…
em-config Revert "**all: hard tabs, trailing newlines**"
em-config.bat Fix python spawn scripts on Windows when the emscripten path contains…
emar Remove unnecessary relpath in emar. Fixes #3525.
emar.bat Fix python spawn scripts on Windows when the emscripten path contains…
embuilder.py Merge branch 'sdl2_ttf_port' of https://github.com/TheKK/emscripten i…
emcc Merge branch 'libArgsFix' of https://github.com/pimlu/emscripten into…
emcc.bat Fix python spawn scripts on Windows when the emscripten path contains…
emcc.py Revert "**all: hard tabs, trailing newlines**"
emcmake Fix discrepancy in emcmake vs emconfigure scripts that CMAKE_CROSSCOM…
emcmake.bat Redirect emcmake calls to emconfigure.
emconfigure Fix discrepancy in emcmake vs emconfigure scripts that CMAKE_CROSSCOM…
emconfigure.bat Fix python spawn scripts on Windows when the emscripten path contains…
emlink.py make emlink.py executable
emmake make emmake/emconfigure notifications less scary
emmake.bat Fix python spawn scripts on Windows when the emscripten path contains…
emranlib Revert "**all: hard tabs, trailing newlines**"
emranlib.bat Fix python spawn scripts on Windows when the emscripten path contains…
emrun Tune emrun to avoid various Firefox network update checks with the cl…
emrun.bat Added emrun utility that allows running .html files in a browser like…
emscons Revert "**all: hard tabs, trailing newlines**"
emscripten-version.txt 1.35.0
emscripten.py Merge branch 'incoming' into split_memory
package.json update package.json

README.md

emscripten logo

Emscripten is an LLVM-to-JavaScript compiler. It takes LLVM bitcode - which can be generated from C/C++, using llvm-gcc (DragonEgg) or clang, or any other language that can be converted into LLVM - and compiles that into JavaScript, which can be run on the web (or anywhere else JavaScript can run).

Links to demos, tutorial, FAQ, etc: https://github.com/kripken/emscripten/wiki

Main project page: http://emscripten.org

License

Emscripten is available under 2 licenses, the MIT license and the University of Illinois/NCSA Open Source License.

Both are permissive open source licenses, with little if any practical difference between them.

The reason for offering both is that (1) the MIT license is well-known, while (2) the University of Illinois/NCSA Open Source License allows Emscripten's code to be integrated upstream into LLVM, which uses that license, should the opportunity arise.

See LICENSE for the full content of the licenses.

Something went wrong with that request. Please try again.