Ngaleupaskeun GNU Mes 0.23, pakakas pikeun ngawangun distribusi mandiri

Saatos sataun pangwangunan, toolkit GNU Mes 0.23 dileupaskeun, nyayogikeun prosés bootstrap pikeun GCC sareng ngamungkinkeun siklus katutup pikeun ngawangun deui tina kode sumber. Toolkit ngarengsekeun masalah rakitan kompiler awal anu diverifikasi dina distribusi, megatkeun ranté rebuilding cyclical (ngawangun kompiler merlukeun file laksana tina kompiler geus diwangun, sarta rakitan kompiler binér mangrupakeun sumber poténsial tina tetengger disumputkeun, nu teu ngidinan pinuh ngajamin. integritas rakitan tina kode sumber rujukan).

GNU Mes nawiskeun interpreter self-hosting pikeun basa Skéma, ditulis dina basa C, sareng kompiler basajan pikeun basa C (MesCC), ditulis dina basa Skéma. Duanana komponén anu interassemblable. Juru Skéma ngamungkinkeun pikeun ngawangun kompiler MesCC C, anu teras ngamungkinkeun anjeun ngawangun vérsi kompiler TinyCC anu dilucuti (tcc), kamampuan anu parantos cekap pikeun ngawangun GCC.

Juru basa Skéma cukup kompak, nyandak kira-kira 5000 baris kode dina sawaréh pangbasajanna basa C sareng tiasa dirobih janten file anu tiasa dieksekusi nganggo penerjemah universal M2-Planet atanapi kompiler C saderhana anu dirakit nganggo hex0 anu dirakit sorangan. assembler, nu teu merlukeun kagumantungan éksternal. Dina waktu nu sarua, juru ngawengku hiji collector sampah full-fledged sarta nyadiakeun perpustakaan modul loadable.

Pelepasan énggal kalebet dukungan pikeun arsitéktur ARM (armhf-linux sareng aarch-linux). Ditambahkeun kamampuhan pikeun ngagunakeun Mes bareng jeung set ngurangan tina file bootstrap tina proyék GNU Guix (GNU Guix Reduced Binary Seed). Dilaksanakeun rojongan pikeun wangunan Mes jeung perpustakaan Mes C maké GCC 10.x. Kompiler MesCC ayeuna ngirimkeun perpustakaan libmescc.a sorangan (-lmescc), sareng nalika ngawangun sareng GCC, "-lgcc" ayeuna ditunjuk. Disadiakeun rojongan pikeun ngawangun MesCC kalawan Guile 3.0.x.

sumber: opennet.ru

Tambahkeun komentar