{"id":111454,"date":"2023-11-12T15:10:13","date_gmt":"2023-11-12T13:10:13","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/vypusk-gnu-mes-0-25-instrumentariya-dlya-samodostatochnoj-sborki-distributivov"},"modified":"2023-11-12T15:10:13","modified_gmt":"2023-11-12T13:10:13","slug":"vypusk-gnu-mes-0-25-instrumentariya-dlya-samodostatochnoj-sborki-distributivov","status":"publish","type":"post","link":"https:\/\/prohoster.info\/en\/blog\/news\/vypusk-gnu-mes-0-25-instrumentariya-dlya-samodostatochnoj-sborki-distributivov","title":{"rendered":"Release of GNU Mes 0.25, a toolset for self-sufficient building of distributions","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>After a year and a half of development, the release of the GNU Mes 0.25 toolset has occurred, facilitating the bootstrapping process for GCC and enabling a closed-loop rebuild from source code. This toolset addresses the challenge of verified initial compiler builds in distributions, breaking the cycle of circular rebuilding (to build a compiler, executables from an already built compiler are required, while binary builds of the compiler can be potential sources of hidden backdoors, preventing full assurance of the integrity of builds from reference source code).    <\/p>\n<p>GNU Mes offers a self-hosting interpreter for the Scheme language, written in C, and a basic compiler for C (MesCC), written in Scheme. Both components are mutually buildable. The Scheme interpreter allows building the C compiler MesCC, which can then compile a stripped-down version of TinyCC (tcc), whose capabilities are sufficient for building GCC.               <\/p>\n<p>The Scheme interpreter is very compact, consisting of about 5,000 lines of code in the simplest subset of C and can be transformed into an executable file using the universal translator M2-Planet or a basic C compiler built using the self-hosting assembler hex0, which does not require external dependencies. The interpreter includes a complete garbage collector and provides a library for loadable modules. The project is also developing the Mes C library, which is sufficient for building glibc 2.2.5, binutils 2.20.1, and gcc 2.95.3, necessary for deploying the Guix distribution for platforms i686-linux, x86_64-linux, armhf-linux, and aarch64-linux, using only source code (Full Source Bootstrap).          <\/p>\n<p>The new release introduces support for the RISC-V architecture (RISC-V64-linux) and adds support for compilation using the M2-Planet transpiler. Building with M2-Planet version 1.11.0 for the target platform x86_64-linux is now supported. Specifying the mode &#171;&#8212;bootstrap-mode&#187; when using M2-Planet is no longer required. Compatibility issues with GCC versions 10+ have been resolved in MesCC, ensuring the initialization of structure fields to 0, and the ability to debug binary files at the level of individual functions has been restored.        <\/p>\n<p>Future releases are expected to include support for NixOS bootstrapping only from source code, support for modules fully compatible with Guile, the ability to run Gash and Gash-Utils, support for bootstrapping gcc 4.6.4, and the capability for complete system builds from source code in Linux environments based on armhf and riscv64 architectures.<br \/>\n<br \/>Source: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=60097\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u043e\u0441\u043b\u0435 \u043f\u043e\u043b\u0443\u0442\u043e\u0440\u0430 \u043b\u0435\u0442 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0441\u043e\u0441\u0442\u043e\u044f\u043b\u0441\u044f \u0432\u044b\u043f\u0443\u0441\u043a \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u044f GNU Mes 0.25, \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u044e\u0449\u0435\u0433\u043e \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u0431\u0443\u0442\u0441\u0442\u0440\u044d\u043f\u043f\u0438\u043d\u0433\u0430 (bootstrap) \u0434\u043b\u044f GCC \u0438 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0449\u0435\u0433\u043e \u0434\u043e\u0431\u0438\u0442\u044c\u0441\u044f \u0437\u0430\u043c\u043a\u043d\u0443\u0442\u043e\u0433\u043e \u0446\u0438\u043a\u043b\u0430 \u043f\u0435\u0440\u0435\u0441\u0431\u043e\u0440\u043a\u0438 \u0438\u0437 \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0445 \u0442\u0435\u043a\u0441\u0442\u043e\u0432. \u0418\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0439 \u0440\u0435\u0448\u0430\u0435\u0442 \u0437\u0430\u0434\u0430\u0447\u0443 \u0432\u0435\u0440\u0438\u0444\u0438\u0446\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0439 \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e\u0439 \u0441\u0431\u043e\u0440\u043a\u0438 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440\u0430 \u0432 \u0434\u0438\u0441\u0442\u0440\u0438\u0431\u0443\u0442\u0438\u0432\u0430\u0445, \u0440\u0430\u0437\u0440\u044b\u0432\u0430\u044f \u0446\u0435\u043f\u043e\u0447\u043a\u0443 \u0446\u0438\u043a\u043b\u0438\u0447\u043d\u043e\u0439 \u043f\u0435\u0440\u0435\u0441\u0431\u043e\u0440\u043a\u0438 (\u0434\u043b\u044f \u0441\u0431\u043e\u0440\u043a\u0438 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440\u0430 \u0442\u0440\u0435\u0431\u0443\u044e\u0442\u0441\u044f \u0438\u0441\u043f\u043e\u043b\u043d\u044f\u0435\u043c\u044b\u0435 \u0444\u0430\u0439\u043b\u044b \u0443\u0436\u0435 \u0441\u043e\u0431\u0440\u0430\u043d\u043d\u043e\u0433\u043e \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440\u0430, \u0430 \u0431\u0438\u043d\u0430\u0440\u043d\u044b\u0435 \u0441\u0431\u043e\u0440\u043a\u0438 \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440\u0430 \u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u043f\u043e\u0442\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u043c \u0438\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u043e\u043c \u0441\u043a\u0440\u044b\u0442\u044b\u0445 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-111454","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.1.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041f\u043e\u0441\u043b\u0435 \u043f\u043e\u043b\u0443\u0442\u043e\u0440\u0430 \u043b\u0435\u0442 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0441\u043e\u0441\u0442\u043e\u044f\u043b\u0441\u044f \u0432\u044b\u043f\u0443\u0441\u043a \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u044f GNU Mes 0.25, \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u044e\u0449\u0435\u0433\u043e \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u0431\u0443\u0442\u0441\u0442\u0440\u044d\u043f\u043f\u0438\u043d\u0433\u0430 (bootstrap) \u0434\u043b\u044f GCC \u0438 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0449\u0435\u0433\u043e \u0434\u043e\u0431\u0438\u0442\u044c\u0441\u044f \u0437\u0430\u043c\u043a\u043d\u0443\u0442\u043e\u0433\u043e \u0446\u0438\u043a\u043b\u0430 \u043f\u0435\u0440\u0435\u0441\u0431\u043e\u0440\u043a\u0438 \u0438\u0437 \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0445 \u0442\u0435\u043a\u0441\u0442\u043e\u0432.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/en\/blog\/news\/vypusk-gnu-mes-0-25-instrumentariya-dlya-samodostatochnoj-sborki-distributivov\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0412\u044b\u043f\u0443\u0441\u043a GNU Mes 0.25, \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u044f \u0434\u043b\u044f \u0441\u0430\u043c\u043e\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e\u0439 \u0441\u0431\u043e\u0440\u043a\u0438 \u0434\u0438\u0441\u0442\u0440\u0438\u0431\u0443\u0442\u0438\u0432\u043e\u0432 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041f\u043e\u0441\u043b\u0435 \u043f\u043e\u043b\u0443\u0442\u043e\u0440\u0430 \u043b\u0435\u0442 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0441\u043e\u0441\u0442\u043e\u044f\u043b\u0441\u044f \u0432\u044b\u043f\u0443\u0441\u043a \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u044f GNU Mes 0.25, \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u044e\u0449\u0435\u0433\u043e \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u0431\u0443\u0442\u0441\u0442\u0440\u044d\u043f\u043f\u0438\u043d\u0433\u0430 (bootstrap) \u0434\u043b\u044f GCC \u0438 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0449\u0435\u0433\u043e \u0434\u043e\u0431\u0438\u0442\u044c\u0441\u044f \u0437\u0430\u043c\u043a\u043d\u0443\u0442\u043e\u0433\u043e \u0446\u0438\u043a\u043b\u0430 \u043f\u0435\u0440\u0435\u0441\u0431\u043e\u0440\u043a\u0438 \u0438\u0437 \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0445 \u0442\u0435\u043a\u0441\u0442\u043e\u0432.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/en\/blog\/news\/vypusk-gnu-mes-0-25-instrumentariya-dlya-samodostatochnoj-sborki-distributivov\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2023-11-12T13:10:13+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2023-11-12T13:10:13+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Release of GNU Mes 0.25, the toolkit for self-sufficient distribution builds | ProHoster","description":"After one and a half years of development, the GNU Mes 0.25 toolkit has been released, providing the bootstrapping process for GCC and enabling a closed loop of rebuilding from source code.","canonical_url":"https:\/\/prohoster.info\/en\/blog\/news\/vypusk-gnu-mes-0-25-instrumentariya-dlya-samodostatochnoj-sborki-distributivov","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"en_US","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0412\u044b\u043f\u0443\u0441\u043a GNU Mes 0.25, \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u044f \u0434\u043b\u044f \u0441\u0430\u043c\u043e\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e\u0439 \u0441\u0431\u043e\u0440\u043a\u0438 \u0434\u0438\u0441\u0442\u0440\u0438\u0431\u0443\u0442\u0438\u0432\u043e\u0432 | ProHoster","og:description":"\u041f\u043e\u0441\u043b\u0435 \u043f\u043e\u043b\u0443\u0442\u043e\u0440\u0430 \u043b\u0435\u0442 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0441\u043e\u0441\u0442\u043e\u044f\u043b\u0441\u044f \u0432\u044b\u043f\u0443\u0441\u043a \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u044f GNU Mes 0.25, \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u044e\u0449\u0435\u0433\u043e \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u0431\u0443\u0442\u0441\u0442\u0440\u044d\u043f\u043f\u0438\u043d\u0433\u0430 (bootstrap) \u0434\u043b\u044f GCC \u0438 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0449\u0435\u0433\u043e \u0434\u043e\u0431\u0438\u0442\u044c\u0441\u044f \u0437\u0430\u043c\u043a\u043d\u0443\u0442\u043e\u0433\u043e \u0446\u0438\u043a\u043b\u0430 \u043f\u0435\u0440\u0435\u0441\u0431\u043e\u0440\u043a\u0438 \u0438\u0437 \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0445 \u0442\u0435\u043a\u0441\u0442\u043e\u0432.","og:url":"https:\/\/prohoster.info\/en\/blog\/news\/vypusk-gnu-mes-0-25-instrumentariya-dlya-samodostatochnoj-sborki-distributivov","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2023-11-12T13:10:13+00:00","article:modified_time":"2023-11-12T13:10:13+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":[],"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/posts\/111454","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/comments?post=111454"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/posts\/111454\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/media?parent=111454"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/categories?post=111454"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/tags?post=111454"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}