lëshimi i mjetit , që siguron procesin e bootstrapping (bootstrap) për GCC dhe lejon arritjen e një cikli të mbyllur të rikompilimit nga kodet burimore.
Ky mjet zgjidh problemin e ndërtimit fillestar të verifikuar të kompilatorit në distribucionet, duke ndërprerë zinxhirin e rikompilimeve ciklike (për ndërtimin e kompilatorit kërkohen skedarë ekzekutues të kompilatorit tashmë të ndërtuar, dhe ndërtimet binarë të kompilatorit janë burime të mundshme për backdoor, çka nuk garanton plotësisht integritetin e ndërtimeve nga kodet burimore standarde).
Në GNU Mes është një interpretues i vetë-mjaftueshëm (self-hosting) për gjuhën Scheme, i shkruar në gjuhën C, dhe një kompiler i thjeshtë për gjuhën C (MesCC), i shkruar në gjuhën Scheme. Të dy komponentët janë të ndërsjellë të ndërtueshëm. Interpretuesi Scheme lejon ndërtimin e kompilerit C MesCC, i cili më pas lejon ndërtimin e një versioni të reduktuar të kompilatorit (tcc), aftësitë e të cilit janë të mjaftueshme për ndërtimin e GCC.
Interpretuesi i gjuhës Scheme është mjaft kompakt, zë rreth 5000 rreshta kodi në një nëngrup të thjeshtë të gjuhës C dhe mund të shndërrohet në një skedar ekzekutues duke përdorur një përkthyes universal apo një kompiler të thjeshtë C, të ndërtuar duke përdorur assembler-in e vetë-mpremtueshëm , pa pasur nevojë për varësi të jashtme. Në të njëjtën kohë, interpretuesi përfshin një mbledhës të plotë të mbeturinave dhe ofron një bibliotekë modulash të ngarkueshëm.
NĂ« versionin e ri Ă«shtĂ« siguruar mbĂ«shtetje pĂ«r ndĂ«rtimet e pĂ«rsĂ«ritshme duke pĂ«rdorur lidhje mes+mescc ose guile+mescc nĂ« distribucionet GNU Guix, Debian GNU/Linux dhe NixOS. ĂshtĂ« shtuar mundĂ«sia e ekzekutimit tĂ« interpretuesit tĂ« Scheme Mes nĂ« GNU Hurd, por kompileri C mescc ende nuk funksionon pĂ«r shkak tĂ« mungesĂ«s sĂ« mbĂ«shtetjes pĂ«r thirrjet sistemore tĂ« nevojshme (p.sh., fork/exec). ĂshtĂ« shtuar mbĂ«shtetje fillestare pĂ«r krijimin e skedarĂ«ve ekzekutues nĂ« FreeBSD. ĂshtĂ« pĂ«rmirĂ«suar mbĂ«shtetja pĂ«r bootstrapping-un e distribucionit Guix duke pĂ«rdorur vetĂ«m komponentĂ« tĂ« gjuhĂ«s Scheme (shell-i Gash (Guile si Shell) nĂ« vend tĂ« bash dhe Gash Core Utils nĂ« vend tĂ« coreutils, grep, sed, gzip, make, awk dhe tar).
Në versionet e ardhshme pritet mbështetje për bootstrapping-un për NixOS, përfshirja e bootstrapping-ut vetëm me komponentë të gjuhës Scheme në degën wip-bootstrap, mbështetje për arkitekturën ARM, mundësia e komp limitës për Mes.c duke përdorur M2-Planet, mbështetje e plotë për modulet Guile, dhe sigurimi i funksionimit të mescc me kernin Hurd.
Burimi: opennet.ru
