Эмскриптен
Оригинальный автор(ы) | Алон Закай |
---|---|
Стабильная версия | 3.1.63 [1] / 12 июля 2024 г |
Репозиторий | |
Написано в | С , С++ , JavaScript [2] |
Тип | Компилятор |
Лицензия | Лицензия MIT , Лицензия на открытый исходный код Университета Иллинойса/NCSA |
Веб-сайт | эмскриптен |
Emscripten — это LLVM / Clang на основе компилятор , который компилирует C и C++ исходный код в WebAssembly , [3] в первую очередь для выполнения в веб-браузерах .
Emscripten позволяет приложениям и библиотекам, написанным на C или C++, заранее компилироваться и эффективно работать в веб-браузерах, обычно со скоростью, сравнимой или более высокой, чем интерпретируемый или динамически скомпилированный JavaScript. Он даже эмулирует всю операционную систему POSIX , позволяя программистам использовать функции из стандартной библиотеки C (libc). [4]
Благодаря более поздней разработке системного интерфейса WebAssembly (WASI) [5] и среды выполнения WebAssembly, такие как Node.js , Wasmtime, [6] и Васмер, [7] Emscripten также можно использовать для компиляции в WebAssembly для выполнения в не-веб-встраиваниях.
Использование
[ редактировать ]Emscripten использовался для переноса ряда баз кода C/C++ в WebAssembly, включая Unreal Engine 3 , SQLite , [8] МешЛаб , [9] Физика пуль , [10] Автокад , [11] и подмножество платформы приложений Qt . [12] Другие примеры программного обеспечения, портированного на WebAssembly через Emscripten, включают следующее:
Игровые движки
[ редактировать ]Игровые движки Unity , Defold и Godot предоставляют возможность экспорта в HTML5 с использованием Emscripten. [13] [14] [15] В Unreal Engine была такая опция экспорта, но она была перенесена из движка в плагин для членов сообщества. [16]
Фреймворки и наборы инструментов
[ редактировать ]openFrameworks экспортирует собственные приложения C++ в HTML5 через Emscripten. [17] emscripten-qt позволяет компилировать приложения, написанные с использованием платформы приложений Qt, в WebAssembly. [12]
Архивирование программного обеспечения
[ редактировать ]В декабре 2014 года Интернет-архив запустил эмулятор DOSBox, скомпилированный в Emscripten, для обеспечения доступа через браузер к тысячам архивных программ MS-DOS и ПК. [18] [19] [20]
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ «Выпуск 3.1.63» . 12 июля 2024 г. Проверено 22 июля 2024 г.
- ^ «emscripten-core/emscripten: Emscripten: компилятор LLVM-JavaScript» . Гитхаб .
С: 40,0%; С++: 34,4%; JavaScript: 17,4%.
- ^ WebAssembly · emscripten-core/emscripten Wiki · GitHub
- ^ Кларк, Лин. «Стандартизация WASI: системный интерфейс для запуска WebAssembly вне Интернета — Mozilla Hacks — блог веб-разработчиков» . Mozilla Hacks — блог веб-разработчиков . Мозилла . Проверено 31 октября 2022 г.
- ^ Проект Вастимайм. «WASI: Системный интерфейс WebAssembly» . WASI.dev . Проект Wasmtime . Проверено 10 февраля 2021 г.
- ^ Проект Вастимайм. «Wasmtime: небольшая и эффективная среда выполнения для WebAssembly и WASI» . Wasmtime.dev . Проект Wasmtime . Проверено 10 февраля 2021 г.
- ^ Васмер. «Васмер: универсальная среда выполнения WebAssembly» . Васмер.io . Васмер . Проверено 10 февраля 2021 г.
- ^ «Указатель документации sqlite3 WebAssembly и JavaScript» . SQLite . Проверено 8 мая 2023 г.
- ^ http://www.meshlabjs.net — домашняя страница экспериментальной клиентской версии MeshLab на основе JavaScript, работающей внутри браузера.
- ^ «Примеры портирования и демо» . Эмскриптен GitHub вики . Проверено 1 марта 2016 г.
- ^ «Будущее AutoCAD» . Через интерфейс . Проверено 9 мая 2018 г. .
- ^ Перейти обратно: а б «Qt для WebAssembly» .
- ^ «Игровой движок Unity переходит в браузер без плагинов» . Арс Техника . 18 марта 2014 года . Проверено 1 марта 2016 г.
- ^ «Будущее сценариев в Unity — блог Unity» . Блог Unity Technologies . Проверено 1 марта 2016 г.
- ^ «Развертывание HTML-разработки» . Развернуть документацию . Проверено 18 декабря 2023 г.
- ^ «Разработка HTML5 с помощью Unreal» . Нереальная документация . 18 декабря 2023 г. Проверено 18 декабря 2018 г.
- ^ «Настройка openFrameworks для Emscripten» . openFrameworks . Проверено 4 марта 2016 г.
- ^ Олхайзер, Эбби (5 января 2015 г.). «Теперь вы можете играть в почти 2400 видеоигр MS-DOS в своем браузере» . Вашингтон Пост . Проверено 8 января 2015 г.
- ^ Каждый новый ботинок - чудо , Джейсон Скотт (23 декабря 2014 г.)
- ^ «Поиск в Интернет-архиве: «collection:softwarelibrary_msdos» » . archive.org . Проверено 1 марта 2016 г.