Emscripten 3.0 dia misy, C/C++ ho an'ny WebAssembly compiler

Navoaka ny famoahana ny Emscripten 3.0 compiler, ahafahanao manangona kaody ao amin'ny C/C ++ sy fiteny hafa izay ahafahan'ny frontends mifototra amin'ny LLVM azo jerena ao amin'ny WebAssembly intermediate code manerantany, ho an'ny fampidirana manaraka amin'ny tetikasa JavaScript, mihazakazaka. amin'ny navigateur web, ary ampiasao amin'ny Node. js na mamorona rindranasa maro-sehatra mitokana izay mandeha amin'ny wasm runtime. Ny kaody tetikasa dia zaraina eo ambanin'ny fahazoan-dàlana MIT. Mampiasa fivoarana avy amin'ny tetikasa LLVM ny compiler, ary ny tranomboky Binaryen dia ampiasaina hamoronana WebAssembly sy fanatsarana.

Ny tanjona fototra amin'ny tetikasa Emscripten dia ny hamorona fitaovana ahafahanao manatanteraka kaody amin'ny Internet na inona na inona fiteny fandaharana izay nanoratana ny code. Ny fampiharana natambatra dia afaka mampiasa antso amin'ny tranomboky C sy C ++ mahazatra (libc, libcxx), fanitarana C++, multithreading mifototra amin'ny pthreads, API POSIX, ary tranomboky multimedia maro. Ny API ho fampidirana amin'ny Web API sy ny code JavaScript dia omena misaraka.

Emscripten dia manohana ny fandefasana ny vokatra avy amin'ny tranomboky SDL2 amin'ny alàlan'ny Canvas, ary koa manome fanohanana ny OpenGL sy EGL amin'ny alàlan'ny WebGL, izay ahafahanao mamadika ny rindranasa sy lalao amin'ny sary ho an'ny WebAssembly (ohatra, misy seranan-tsambo Qt fitaovana ary manohana Unreal Engine 4 ary motera lalao Unit, motera Bullet ara-batana). Ho fanampin'ny fanangonana kaody ao amin'ny C/C ++, dia novolavolaina mitokana ny tetikasa mba hiantohana ny fandefasana mpandika teny sy milina virtoaly amin'ny navigateur ho an'ny fiteny Lua, C#, Python, Ruby ary Perl. Azo atao ihany koa ny mampihatra ny frontend tsy Clang amin'ny LLVM, azo ampiasaina amin'ny fiteny toa ny Swift, Rust, D ary Fortran.

Fiovana lehibe ao amin'ny Emscripten 3.0:

  • Ny tranomboky musl C ampiasaina amin'ny emscripten dia nohavaozina ho version 1.2.2 (version 2 dia nampiasaina tao amin'ny sampana Emscripten 1.1.15.x).
  • Nesorina tao amin'ny tranomboky parseTools.js ny ampahany amin'ny fiasa izay nampiasaina indrindra tao anatin'ny tetikasa: removePointing, pointingLevels, removeAllPointing, isVoidType, isStructPointerType, isArrayType, isStructType, isVectorType, isStructuralType getStructuralType, isStructuralType getStructural Def, isPossiblyFunctionType, isFunctionType, getReturnType, splitTo kenList, _IntToHex, IEEEUnHex , Compiletime.isPointerType, Compiletime.isStructType, Compiletime.INT_TYPES, isType.
  • Ao amin'ny maodely shell.html sy shell_minimal.html, ny famoahana hafatra diso izay mitranga mandritra ny fampandehanana ny emscripten ary navoakan'ny fampiharana amin'ny alàlan'ny stderr dia avadika ho default hampiasa console.warn fa tsy console.error.
  • Nampiana ny fahafahana mamaritra fehezan-teny manokana ampiasaina amin'ny anaran-drakitra. Ny encoding dia azo faritana amin'ny endrika tovana rehefa mandalo ny anaran'ny rakitra, ohatra, "a.rsp.utf-8" na "a.rsp.cp1251").

Source: opennet.ru

Add a comment