Емсцриптен 3.0, ланац алата за прављење ВебАссембли-а користећи ЛЛВМ

Недавно најављено је издавање нове верзије компајлера Емсцриптен 3.0, коју карактерише омогућавање компајлирања кода у Ц / Ц ++ и другим језицима за које су доступни фронтендови засновани на ЛЛВМ-у, у универзалном међуверском ВебАссембли ниском нивоу.

Главна функција ове компилације је њена накнадна интеграција са ЈаваСцрипт пројектима, покретање у веб претраживачу, коришћење у Ноде-у. Јс или креирајте самосталне апликације на више платформи које се покрећу са васм рунтиме-ом.

О Емсцриптену

Главни циљ развој пројекта Емсцриптен је креирање алата који вам омогућава да покренете код на вебу, без обзира на програмски језик на ком је написан.

Преведене апликације могу користити стандардне Ц и Ц ++ позиве библиотеке (либц, либцкк), Ц ++ екстензије, вишенитност заснована на птхреадс, ПОСИКС АПИ и многе мултимедијалне библиотеке. АПИ-ји за интеграцију са Веб АПИ-јем и ЈаваСцрипт кодом су обезбеђени одвојено.

Емсцриптен подржава стриминг излаза СДЛ2 библиотеке преко Цанвас-а, а такође пружа подршку за ОпенГЛ и ЕГЛ преко ВебГЛ-а, омогућавајући вам да конвертујете графичке апликације и игре у ВебАссембли.

Практично свака преносива база кода Ц или Ц ++ може се превести у ВебАссембли користећи ЕмсцриптенОд игара високих перформанси које треба да рендерују графику, репродукују звукове и учитавају и обрађују датотеке, до оквира апликација као што је Кт. Емсцриптен је већ коришћен за претварање веома дугачке листе база кодова из стварног света у ВебАссембли, укључујући комерцијалне базе кода као што су Унреал Енгине 4 и Унити Енгине.

Поред компајлирања Ц / Ц ++ кода, пројекти се развијају одвојено како би се осигурало да тумачи и виртуелне машине за Луа, Ц #, Питхон, Руби и Перл почну у претраживачима. Такође је могуће применити не-Цланг интерфејсе на ЛЛВМ који су доступни за језике као што су Свифт, Руст, Д и Фортран.

Треба то напоменути постоје разлике између изворног времена извршавања и Емсцриптена, што значи да, генерално, еПотребно је направити неке измене у изворном коду. Имајући то у виду, многе апликације ће морати само да промене начин на који дефинишу своју главну петљу и да модификују руковање датотекама да би се прилагодиле ограничењима претраживача/ЈаваСкрипта.

Постоје и ограничења која могу олакшати миграцију неког кода – прочитајте Смернице за преносивост да бисте утврдили где ћете можда морати да уложите више труда.

Главне нове карактеристике Емсцриптен 3.0

У овој новој верзији која је представљена, библиотека мусл Ц која се користи у емсцриптен-у је ажурирана на верзију 1.2.2 (верзија 1.1.15 је коришћена у грани Емсцриптен 2.к).

Из библиотеке парсеТоолс.јс је уклоњен део функција које се углавном користе у пројекту: ремовеПоинтинг, поинтингЛевелс, ремовеАллПоинтинг, исВоидТипе, исСтруцтПоинтерТипе, исАрраиТипе, исСтруцтТипе, исВецторТипе, исСтруцтуралТипе гетСтруцтуралТипеПартс, гетСтруцтуралТипе _ИнтТоХек, ЦомпилеиТимпеи, ЦомпилеиТимпеиТпеи, ЦомпилеиТипеи, ЦомпилеиТипеи.

Док у шаблонима схелл.хтмл и схелл_минимал.хтмл, излаз порука о грешци који се јављају током емсцриптен операције и које апликација издаје преко стдерр-а подразумевано је промењено да користи цонсоле.варн уместо цонсоле.еррор.

Такође је истакнуто да додала могућност да се специфицира специфично кодирање текста који се користи у називима датотека. Кодирање се може навести као суфикс приликом прослеђивања имена датотеке, на пример „а.рсп.утф-8“ или „а.рсп.цп1251“).

Коначно, ако сте заинтересовани да сазнате више о Емсцриптен-у, можете погледати детаље пројекта у његовом званични сајт.

И на исти начин, можете погледати документацију на вебу о томе како да користите Емсцриптен, референтни сајт који можемо да препоручимо је веб локација за програмере Мозилла: https://developer.mozilla.org.

Такође, важно је напоменути да се код пројекта дистрибуира под МИТ лиценцом. Компајлер користи развоје из ЛЛВМ пројекта, а Бинариен библиотека се користи за генерисање ВебАссембли-а и оптимизацију. Можете проверити свој код извор на ГитХуб-у.


Оставите свој коментар

Ваша емаил адреса неће бити објављена. Обавезна поља су означена са *

*

*

  1. Odgovorni za podatke: AB Internet Networks 2008 SL
  2. Сврха података: Контрола нежељене поште, управљање коментарима.
  3. Легитимација: Ваш пристанак
  4. Комуникација података: Подаци се неће преносити трећим лицима, осим по законској обавези.
  5. Похрана података: База података коју хостује Оццентус Нетворкс (ЕУ)
  6. Права: У било ком тренутку можете ограничити, опоравити и избрисати своје податке.