Emscripten 3.0 waa la heli karaa, C/C++ ilaa WebAssembly compiler

Siideynta Emscripten 3.0 compiler ayaa la daabacay, taasoo kuu ogolaaneysa inaad ku ururiso koodka C/C ++ iyo luqadaha kale ee LLVM-ku-saleysan ee hore loo heli karo koodhka heerka hoose ee caalamiga ah ee WebAssembly, si loogu daro mashaariicda JavaScript, socodsiinta gudaha biraawsarkaaga webka, oo ku isticmaal Node.js ama abuurista barnaamijyo gooni-gooni ah oo badan oo ku shaqeeya isticmaalka wasm runtime. Xeerka mashruuca waxa lagu qaybiyaa shatiga MIT. Isku-dubbaridiyuhu wuxuu isticmaalaa horumarinta mashruuca LLVM, iyo maktabadda Binaryen waxaa loo isticmaalaa jiilka WebAssembly iyo hagaajinta.

Hadafka ugu weyn ee mashruuca Emscripten waa in la abuuro qalab kuu ogolaanaya inaad ku fuliso koodka Websaydhka iyada oo aan loo eegin luqadda barnaamijka ee code-ku ku qoran yahay. Codsiyada la soo ururiyey waxay isticmaali karaan wicitaanada xarumaha C iyo C++ ee caadiga ah (libc, libcxx), C++ kordhinta, pthreading multithreading, POSIX APIs, iyo maktabado badan oo warbaahin ah. API-yada is dhexgalka leh Web API iyo code JavaScript si gaar ah ayaa loo bixiyaa.

Emscripten waxay taageertaa baahinta wax soo saarka maktabadda SDL2 iyada oo loo sii marayo Canvas, sidoo kale waxay taageertaa OpenGL iyo EGL iyada oo loo sii marayo WebGL, taas oo kuu oggolaanaysa inaad u beddesho codsiyada garaafyada iyo ciyaaraha WebAssembly (tusaale, waxaa jira deked ka mid ah qalabka Qt waxayna taageertaa Engine Unreal. 4 iyo matoorada ciyaarta cutubka, matoorka rasaasta jireed). Marka lagu daro koodhka lagu soo ururiyo C/C++, mashaariicda si gaar ah ayaa loo soo saarayaa si loo hubiyo in la bilaabay turjubaano iyo mashiinada farsamada ee daalacashada luqadaha Lua, C #, Python, Ruby iyo Perl. Waxa kale oo suurtagal ah in lagu dabaqo LLVM-yada hore ee aan Clang ahayn, ee loo heli karo luqadaha sida Swift, Rust, D iyo Fortran.

Isbeddellada waaweyn ee Emscripten 3.0:

  • Maktabada musl C ee lagu isticmaalo emscripten ayaa la cusboonaysiiyay nooca 1.2.2 (nooca 2 waxa lagu isticmaalay laanta Emscripten 1.1.15.x).
  • Qayb ka mid ah hawlaha inta badan loo adeegsaday mashruuca ayaa laga saaray maktabadda parseTools.js: ka saarida Pointing, Tilmaanta Heerarka, ka saaridaAllPointing, isVoidType, isStructPointerType, isArrayType, isStructType, isVectorType, isStructuralType, isTructuralType, isType unctionDef, waa suurtagalFunctionType, isFunctionType, getReturnType, splitTokenList, _IntToHex, IEEEUnHex, Compiletime.isPointerType, Compiletime.isStructType, Compiletime.INT_TYPES, waa Nooca.
  • Qaababka shell.html iyo shell_minimal.html, soo saarida fariimaha khaladka ah ee dhaca inta lagu guda jiro hawlgalka emscripten oo ay soo saaraan codsiga via stderr ayaa loo beddelay si ay u isticmaalaan console.warn halkii console.error.
  • Waxaa lagu daray awoodda lagu qeexo cod-bixin gaar ah oo qoraal ah oo lagu isticmaalo magacyada faylka. Codaynta waxaa lagu qeexi karaa qaab lifaaq ah marka la gudbinayo magaca faylka, tusaale ahaan, "a.rsp.utf-8" ama "a.rsp.cp1251").

Source: opennet.ru

Add a comment