Emcribe

From alpha
Jump to navigation Jump to search
Emscripten
मूल लेखकAlon Zakai
Stable release
2.0.29 / 26 August 2021; 2 years ago (2021-08-26)[1]
इसमें लिखा हुआC, C++, JavaScript[2]
प्रकारCompiler
लाइसेंसMIT License, University of Illinois/NCSA Open Source License

Emscripten एक LLVM/Clang-आधारित संकलक है जो C (प्रोग्रामिंग लैंग्वेज) और C++ सोर्स कोड को WebAssembly में कंपाइल करता है।[3] (या जावास्क्रिप्ट के एक सबसेट को asm.js के रूप में जाना जाता है,[4] 2017 में WebAssembly के आगमन से पहले इसका मूल संकलन लक्ष्य), मुख्य रूप से वेब ब्राउज़र्स में निष्पादन के लिए।

Emscripten C या C++ में लिखे गए एप्लिकेशन और लाइब्रेरी को समय से पहले संकलित करने और वेब ब्राउज़र में कुशलता से चलाने की अनुमति देता है, आमतौर पर दुभाषिया (कंप्यूटिंग) या समय-समय पर संकलन जावास्क्रिप्ट की तुलना में या उससे तेज़ गति पर। यह संपूर्ण POSIX ऑपरेटिंग सिस्टम का भी अनुकरण करता है, जिससे प्रोग्रामर C मानक लाइब्रेरी (libc) से कार्यों का उपयोग करने में सक्षम होते हैं।[5] और WebAssembly रनटाइम सिस्टम जैसे Node.js, Wasmtime, रेफरी>The Wasmtime Project. "Wasmtime: WebAssembly और WASI के लिए एक छोटा और कुशल रनटाइम". Wasmtime.dev. The Wasmtime Project. Retrieved 2021-02-10.</रेफरी> और वासमर, रेफरी>Wasmer. "वासमर: द यूनिवर्सल वेबअसेंबली रनटाइम". Wasmer.io. Wasmer. Retrieved 2021-02-10.</ref> Emscripten का उपयोग गैर-वेब एम्बेडिंग में निष्पादन के लिए WebAssembly को संकलित करने के लिए भी किया जा सकता है।

उपयोग

Emscripten का उपयोग कई C/C++ कोड बेस को WebAssembly में में porting करने के लिए किया गया है, जिसमें Unreal Engine#Unreal Engine 3, SQLite, MeshLab, शामिल हैं।[6] बुलेट (सॉफ्टवेयर)[7] ऑटोकैड,[8] और क्यूटी (सॉफ्टवेयर) का एक सबसेट।[9] Emscripten के माध्यम से WebAssembly में पोर्ट किए गए सॉफ़्टवेयर के अन्य उदाहरणों में निम्नलिखित शामिल हैं:

गेम इंजन

यूनिटी (गेम इंजन), गोडोट (गेम इंजन), और अवास्तविक इंजन गेम इंजन ईएमएसक्रिप्टन का उपयोग करते हुए HTML5 को निर्यात विकल्प प्रदान करते हैं।[10][11][12]


openFrameworks और टूलकिट

OpenFrameworks मूल C++ अनुप्रयोगों को HTML5 में Emscripten के माध्यम से निर्यात करता है।[13] emscripten-qt WebAssembly को Qt (सॉफ़्टवेयर) का उपयोग करके लिखे गए एप्लिकेशन को संकलित करने की अनुमति देता है।[9]


सॉफ़्टवेयर संग्रहण

दिसंबर 2014 में, इंटरनेट आर्काइव ने हजारों संग्रहित MS-DOS और PC प्रोग्रामों को ब्राउज़र-आधारित एक्सेस प्रदान करने के लिए Emscripten में संकलित एक DOSBox एमुलेटर लॉन्च किया।[14][15][16]


यह भी देखें

संदर्भ

  1. "emscripten-core/emscripten: Releases". emscripten-core/emscripten. GitHub. Retrieved 2021-02-09.
  2. "emscripten-core/emscripten: Emscripten: An LLVM-to-JavaScript Compiler". GitHub. C: 40.0%; C++: 34.4%; JavaScript: 17.4%.
  3. WebAssembly · emscripten-core/emscripten Wiki · GitHub
  4. Walton, Zach (2012-04-04). "Easily Port C++ To HTML5/JavaScript With Emscripten". WebProNews. iEntry Network. Archived from the original on 2013-07-30. Retrieved 2012-04-25.
  5. Clark, Lin. "WASI का मानकीकरण: वेब के बाहर WebAssembly को चलाने के लिए एक सिस्टम इंटरफ़ेस - मोज़िला हैक्स - वेब डेवलपर ब्लॉग". Mozilla Hacks – the Web developer blog. Mozilla. Retrieved 31 October 2022.</रेफरी> WebAssembly System Interface (WASI) के हालिया विकास के साथ रेफरी>The Wasmtime Project. "WASI: वेबएसेम्बली सिस्टम इंटरफ़ेस". WASI.dev. The Wasmtime Project. Retrieved 2021-02-10.
  6. http://www.meshlabjs.net - Homepage of the experimental, client based, javascript, version of MeshLab that runs inside a browser
  7. "Porting Examples and Demos". Emscripten GitHub wiki. Retrieved 2016-03-01.
  8. "The Future of AutoCAD". Through the Interface. Retrieved 2018-05-09..
  9. 9.0 9.1 "Qt for WebAssembly".
  10. "Unity game engine heading to the browser without plug-ins". Ars Technica. 18 March 2014. Retrieved 2016-03-01.
  11. "The future of scripting in Unity – Unity Blog". Unity Technologies Blog. Retrieved 2016-03-01.
  12. "Tappy Chicken". www.unrealengine.com. Retrieved 2016-03-01.
  13. "openFrameworks setup for Emscripten". openFrameworks. Retrieved 2016-03-04.
  14. Ohlheiser, Abby (2015-01-05). "You can now play nearly 2,400 MS-DOS video games in your browser". The Washington Post. Retrieved 2015-01-08.
  15. Each New Boot a Miracle by Jason Scott (December 23, 2014)
  16. "Internet Archive Search: "collection:softwarelibrary_msdos"". archive.org. Retrieved 2016-03-01.


बाहरी संबंध