PĂ€rast poolteist aastat kestnud arendustööd lasti vĂ€lja GNU Mes 0.25 tööriistakomplekt, mis pakkus GCC alglaadimisprotsessi ja vĂ”imaldas lĂ€htekoodist uuesti ĂŒlesehitamise suletud tsĂŒklit. Tööriistakomplekt lahendab distributsioonides kontrollitud esialgse kompilaatori kokkupaneku probleemi, katkestades tsĂŒklilise ĂŒmberehitamise ahela (kompilaatori ehitamiseks on vaja juba ehitatud kompilaatori kĂ€ivitatavaid faile ja binaarsed kompilaatorikomplektid on potentsiaalne peidetud jĂ€rjehoidjate allikas, mis ei vĂ”imalda tĂ€ielikku garantiid lĂ€htekoodide komplektide terviklikkus).
GNU Mes pakub C-keeles kirjutatud skeemikeele jaoks isehostivat tÔlki ja lihtsat C-keele kompilaatorit (MesCC), mis on kirjutatud skeemikeeles. MÔlemad komponendid on omavahel kokkupandavad. Scheme interpreter vÔimaldab ehitada MesCC C kompilaatori, mis seejÀrel vÔimaldab teil ehitada TinyCC kompilaatori (tcc) eemaldatud versiooni, mille vÔimalused on juba piisavad GCC ehitamiseks.
Skeemikeele tĂ”lk on vĂ€ga kompaktne, vĂ”tab C-keele kĂ”ige lihtsamas alamhulgas umbes 5000 koodirida ja seda saab teisendada kĂ€ivitatavaks failiks, kasutades universaalset tĂ”lkijat M2-Planet vĂ”i lihtsat C-kompilaatorit, mis on kompileeritud isekoostuva hex0-koostaja abil. mis ei nĂ”ua vĂ€liseid sĂ”ltuvusi. Samal ajal sisaldab tĂ”lk tĂ€ieĂ”iguslikku prĂŒgikogujat ja pakub laaditavate moodulite raamatukogu. Projekt arendab ka Mes C C teeki, millest piisab glibc 2.2.5, binutils 2.20.1 ja gcc 2.95.3 loomiseks, mis on vajalikud Guixi distributsiooni juurutamiseks i686-linux, x86_64-linux, armhf-linux ja aarch64 jaoks -linuxi platvormid, kasutades ainult lĂ€htekoode (Full Source Bootstrap).
Uus versioon tutvustab RISC-V arhitektuuri (RISC-V64-linux) tuge ja lisab M2-Planeti transpileri abil kompileerimise toe. Toetatud koost versiooniga M2-Planet 1.11.0 x86_64-linuxi sihtplatvormi jaoks. M2-Planeti kasutamisel ei ole enam vaja mÀÀrata "--bootstrap-mode". MesCC lahendab ĂŒhilduvusprobleemid GCC 10+ versioonidega, tagab struktuurivĂ€ljade lĂ€htestamise nulliga ja taastab binaarfailide silumise vĂ”imaluse ĂŒksikute funktsioonide tasemel.
Tulevased versioonid peaksid sisaldama tuge NixOS-i kĂ€ivitamiseks ainult lĂ€htekoodist, tuge Guile'iga tĂ€ielikult ĂŒhilduvatele moodulitele, vĂ”imalust kĂ€itada Gashi ja Gash-Utilsi, tuge gcc 4.6.4 kĂ€ivitamiseks ning vĂ”imalust kogu sĂŒsteem tĂ€ielikult lĂ€htekoodist ehitada. Linux-keskkonnad, mis pĂ”hinevad armhf ja riscv64 arhitektuuridel.
Allikas: opennet.ru
