TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

Working towards a source-based bootstrapping path to a GNU+Linux system

97 点作者 podiki超过 3 年前

8 条评论

mtzet超过 3 年前
Bootstrapping GNU userland is a major pain point, and it&#x27;s great to see GNU Guix taking it so seriously. There&#x27;s even a section of their manual dedicated to it [1].<p>This is important, even if you don&#x27;t intend to run GNU Guix itself. I care about building GNU userland for embedded targets, and even with a build system like Yocto, which builds specific versions of the entire host userland, you can get errors due to eg. an older gnu m4 not being buildable with a modern glibc. Thus, you end up essentially requiring developers to build inside a container.<p>This is paving the way for having everything required to build a piece of software just checked into the git repository. If you want to change it, you just commit it like everything else.<p>[1] <a href="https:&#x2F;&#x2F;guix.gnu.org&#x2F;manual&#x2F;en&#x2F;guix.html#Bootstrapping" rel="nofollow">https:&#x2F;&#x2F;guix.gnu.org&#x2F;manual&#x2F;en&#x2F;guix.html#Bootstrapping</a>
cogburnd02超过 3 年前
somewhat related: <a href="https:&#x2F;&#x2F;bellard.org&#x2F;tcc&#x2F;tccboot.html" rel="nofollow">https:&#x2F;&#x2F;bellard.org&#x2F;tcc&#x2F;tccboot.html</a><p>was a project to boot the Linux kernel directly from source code using a C compiler as part of the boot process.
dane-pgp超过 3 年前
As well as the diagram on that page, there is a nice document in one of the repos listing the bootstrapping steps in order, from &quot;stage0&quot; to &quot;gcc 4.7.4&quot; and beyond:<p><a href="https:&#x2F;&#x2F;github.com&#x2F;fosslinux&#x2F;live-bootstrap&#x2F;blob&#x2F;master&#x2F;parts.rst" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;fosslinux&#x2F;live-bootstrap&#x2F;blob&#x2F;master&#x2F;part...</a>
snicker7超过 3 年前
Bootstrappability is the reason why GNU Guix is one of the most ever important software projects. Moreover, I see Guix as the unifying force for the entire GNU project. It is the perfect playground to test and develop emerging tech (Shepherd, Hurd, &amp;tc.).
NeutralForest超过 3 年前
Can someone explain to me <i>why</i> bootstrapping is important and&#x2F;or useful?
评论 #28275105 未加载
bcrl超过 3 年前
Bootstrapping gcc and libc was one of the time honoured traditions I went through as a teenager with a Linux box. Learning how to set up gcc as a cross compiler to produce ELF binaries on an a.out system (or generating m68k binaries on my 486) was quite helpful later in my career when working on embedded systems. Granted, a lot of this was necessary as SLS and Slackware didn&#x27;t exactly have very capable packaging systems at the time.
math-dev超过 3 年前
I find this fascinating and am a big supporter of FSF and GNU.<p>All that said, I am not an expert so would like to learn more. Can somebody let me know why one cannot just take the assembly version of an existing compiler and carefully review its code to be happy with it and then build everything from that verified compiler? Why does it need so many steps?
评论 #28270488 未加载
评论 #28272069 未加载
评论 #28272483 未加载
aninteger超过 3 年前
Super interesting, but I wonder if there is a historical accurate account of bootstrapping that is well documented. This jumps into ELF pretty quickly but there were older formats like a.out and OMAGIC? before ELF. Is there good documentation on the bootstrapping of x86 BSD or Minix since they are even older than Linux.