:

Szerző: Hlács Ferenc

2018. március 7. 10:53

Windowson is Clang fordítómotorra vált a Google Chrome

Ezzel a keresőóriás böngészőjéhez már minden platformon egységes fordítót használ, az elmúlt öt év munkája a Chrome 64-re ért be.

A Chrome 64 kapcsán már több lényeges újításról is beszámoltunk, a böngésző beépített hirdetésblokkolójától a gyűjtőlinkek szélesebb körű használatáig, a Google-nek azonban még március elején is volt mondanivalója a szoftvert érintő fontos változásokról. A 64-es verziótól fogva ugyanis a Chrome windowsos kiadása is a Clang fordítóval, illetve az LLVM toolchainnel készül, ezzel pedig a böngésző végre az összes platformon ugyanarra a fordítóra támaszkodik - az androidos, iOS-es, linuxos, macOS-es, illetve Chrome OS-es verziók ugyanis már jó ideje a Clangot használják. A lépés azért kiemelten fontos, mert a windowsos Chrome az androidos verzió után a legszélesebb körben használt kiadás a különböző platformokra készült variánsok közül.

A szóban forgó Clang az első nyílt forrású C++ fordítómotor, amely a Microsoft Visual C++-szal (MSVC) is ABI-kompatibilis, azaz lehetőség van egy-egy szoftver bizonyos részeit az MSVC fordítóval felépíteni, míg másokat a Clangra támaszkodva, ezek pedig működő programmá fűzhetők össze. A cég nem a napokban döntött a Clang és LLVM használata mellett Windowson, mint azt az Ars Technica is aláhúzza, a vállalat már 2013-ban elhatározta, hogy egységes fordítómotorra vált minden platformon - ami logikus lépés, hiszen így nem kell külön-külön vadászni a felbukkanó bugokra. A fejlesztőcsapat ekkor még, illetve egészen a Chrome 64-ig Windows alatt az MSVC-t használta, utóbbi a platform legszélesebb körben használt, legjobban támogatott fordítómotorja, amely ráadásul gördülékenyen együttműködik a rendszer különböző debugging eszközeivel, mint például a WinDbg.

clngllvm

Nyerd meg az 5 darab, 1000 eurós Craft konferenciajegy egyikét!

A kétnapos, nemzetközi fejlesztői konferencia apropójából a HWSW kraftie nyereményjátékot indít.

Nyerd meg az 5 darab, 1000 eurós Craft konferenciajegy egyikét! A kétnapos, nemzetközi fejlesztői konferencia apropójából a HWSW kraftie nyereményjátékot indít.

A Clangról öt évvel ezelőtt ez nem volt elmondható, az eszköz egyebek mellett más parancssoros utasításokat használt mint az MSVC, továbbá az LLVM még a Windowson bevett, debugging adatokhoz készült PDB fájlformátumot sem támogatta. A Google ezért saját kézbe vette a dolgot, és egy dedikált csapattal maga csiszolta hozzá a fordítómotort és toolchaint a Microsoft rendszeréhez, 2015-re pedig napvilágot is látott az első, Clanggal készült Chrome verzió, igaz egyelőre csak a Canary csatornán - a stabil változat a 64-es kiadásra érett be. A mutatványhoz persze a Microsoft oldaláról is szükség volt némi segítségre, a cég egyebek mellett a biztosította a PDB formátum részletes dokumentációját a fejlesztőknek.

Ahogy bejelentésében a Google is kiemeli, a Clang nem helyettesíti a Visual Studiót, sokkal inkább kiegészíti azt. A Chrome fejlesztői továbbra is a Microsoft headerjeit és libraryjait használják a böngészőhöz, illetve sok fejlesztő továbbra is a Visual Studio IDE-ben dolgozik, mind a fejlesztési, mind a debugging feladatok során. A váltás továbbá az LLVM toolchain esetében sem teljes, a Chrome Windows alatt továbbra is a Microsoft C++ libraryt használja, noha a Google hosszabb távon tervezi a váltást a Clang C++ libraryra, ugyanígy a lefordított forráskódból DLL-t faragó Microsoft linkertől sem köszönt még el a cég, de már tervben van az áttérés az LLVM linkerre.

A Google tesztjei szerint a teljesítmény egyes területeken javul, másoknál csökken MSVC-ről Clangra váltva, ugyanakkor a változások minden esetben 5 százalékon belül maradnak, így lényeges eltérést nem lehet majd érzékelni az új fordító használatával. A cég stabilitás terén sem észlelt változást.

Milyen technológiai és munkaerőpiaci hatások érhetik a backendes szakmát? Május 8-án végre elindul az idei kraftie! meetup-sorozat is (helyszíni vagy online részvétellel).

a címlapról

Hirdetés

Security témákkal folyatódik az AWS hazai online meetup-sorozata!

2024. április 25. 12:21

A sorozat május 28-i, harmadik állomásán az AWS-ben biztonsági megoldásait vesszük nagyító alá. Átnézzük a teljes AWS security portfóliót a konténerbiztonságtól a gépi tanulásos alkalmazások védelmén át, egészen az incidenskezelésig.