Náš nový překladač Silicon jsme vám již představili v předchozím příspěvku na blogu. Tento nový kompilátor bude sloužit k sestavování nativních aplikací Silicon a bude k dispozici pouze v režimu projektu.
Nativní aplikace Intel (v systémech Windows a Mac) budou i nadále používat klasický kompilátor.
Pojďme se podívat hlouběji a zjistit, jak přesně to funguje.
Kompilátor 4D Silicon je zvláštní: je to dvoukrokový kompilátor.
Nejprve překládá kód 4D do zdrojových souborů C++. A poté zkompiluje kód C++ pomocí nejmodernějšího open-source kompilátoru Clang na Macu.
Tento přístup má mnoho výhod:
– Optimalizované: Výsledná aplikace je zkompilována s využitím nejlepších optimalizací a je stejně rychlá jako čistý kód C++.
– Aktuální: Společnost Apple poskytuje o svých procesorech jen kusé informace, takže k získání nativních aplikací pro křemík musíme použít její kompilátory. Toto omezení je zároveň výhodou, protože s každým novým procesorem přijde nová verze Clangu. Vaše aplikace tak budou těžit z nejnovějších vylepšení a zůstanou kompatibilní s každou novou generací strojů Silicon.
Co se změnilo?
Tento nový přístup přichází s několika změnami.
Zaprvé máte nyní možnost kompilovat pro procesory Silicon a/nebo Intel. Na kartě Kompilátor v Nastavení aplikace je nový parametr nazvaný Cíl kompilace.
Můžete jej nastavit na svůj procesor (Silicon na Silicon Macu, Intel jinak) nebo na všechny procesory (Silicon i Intel). Jako poznámku na okraj lze uvést, že kompilaci pro procesor Silicon můžete provést na libovolném počítači Mac (Intel nebo Silicon), ale ne na počítači se systémem Windows:
Pro kompilaci pro Silicon budete potřebovat Clang. Clang je dodáván s nejnovější verzí XCode. Pokud jej nemáte, 4D vás navede na AppStore, kde XCode nainstalujete.
Inkrementální kompilace
Překladač Silicon používá inkrementální kompilaci. To znamená, že při první kompilaci aplikace nebo těsně po vymazání zkompilovaného kódu bude doba kompilace výrazně delší, protože 4D zkompiluje vše. Při dalších kompilacích se však zkompilují pouze soubory, které jste změnili, a proto by měly být zhruba stejně rychlé jako obvykle.
Po dokončení kompilace se ve složce balíčku objeví nový adresář s názvem Libraries. Uvnitř bude systémová knihovna lib4d-arm64.dylib obsahovat zkompilovaný kód vaší aplikace.
To je vše. Stačí restartovat v zkompilovaném režimu a můžete svou aplikaci nativně používat v systému Silicon.
Pokud máte připomínky nebo dotazy, přijďte se nás zeptat na fórum 4D.
Šťastnou kompilaci!