Ħruġ ta' GNU Mes 0.23, sett ta' għodda għall-bini ta' distribuzzjoni awtonomu

Wara sena ta 'żvilupp, ġie rilaxxat l-għodda GNU Mes 0.23, li pprovdiet proċess bootstrap għall-GCC u tippermetti ċiklu magħluq ta' bini mill-ġdid mill-kodiċi tas-sors. Is-sett ta' għodda jsolvi l-problema tal-assemblaġġ tal-kompilatur inizjali vverifikat fid-distribuzzjonijiet, u jkisser il-katina tal-bini mill-ġdid ċikliku (il-bini ta' kompilatur jeħtieġ fajls eżekutibbli ta' kompilatur diġà mibni, u l-assemblaġġi tal-kompilaturi binarji huma sors potenzjali ta' bookmarks moħbija, li ma jippermettux garanzija sħiħa l-integrità ta’ assemblaġġi minn kodiċijiet tas-sors ta’ referenza).

GNU Mes joffri interpretu self-hosting għal-lingwa Scheme, miktuba fil-lingwa C, u kompilatur sempliċi għal-lingwa Ċ (MesCC), miktuba fil-lingwa Scheme. Iż-żewġ komponenti huma interassemblable. L-interpretu tal-Iskema jagħmilha possibbli li tibni l-kompilatur MesCC C, li mbagħad jippermettilek li tibni verżjoni mqaxxra tal-kompilatur TinyCC (tcc), li l-kapaċitajiet tiegħu diġà huma biżżejjed biex tibni GCC.

L-interpretu tal-lingwa Scheme huwa pjuttost kompatt, jieħu madwar 5000 linja ta 'kodiċi fl-aktar subsett sempliċi tal-lingwa C u jista' jiġi kkonvertit f'fajl eżekutibbli bl-użu tat-traduttur universali M2-Planet jew kompilatur C sempliċi immuntat bl-użu tal-hex0 immuntat minnu nnifsu. assembler, li ma jeħtieġx dipendenzi esterni. Fl-istess ħin, l-interpretu jinkludi kollettur taż-żibel sħiħ u jipprovdi librerija ta 'moduli li jistgħu jitgħabbew.

Ir-rilaxx il-ġdid jinkludi appoġġ għall-arkitettura ARM (armhf-linux u aarch-linux). Żid il-ħila li tuża Mes flimkien ma' sett imnaqqas ta' fajls bootstrap mill-proġett GNU Guix (GNU Guix Reduced Binary Seed). Appoġġ implimentat għall-bini ta' Mes u l-librerija Mes C bl-użu ta' GCC 10.x. Il-kompilatur MesCC issa jibgħat il-librerija libmescc.a tiegħu stess (-lmescc), u meta jibni bil-GCC, issa hija speċifikata "-lgcc". Ipprovda appoġġ għall-bini ta' MesCC b'Guile 3.0.x.

Sors: opennet.ru

Żid kumment