我一直在寻找一种 Linux 发行版,它不适用于嵌入式系统,并且不使用许多流行发行版中的许多 GNU 实用程序。我想开发一个(宠物项目)Linux 发行版,它使用来自用户空间的 musl-libc、bsd userland 和 Plan 9。在我开始并可能浪费时间做不可能的事情之前,使用 BSD userland 替代 GNU coreutils 是否可行/实用?如果不能,有什么替代方案?
最佳答案
您的目标似乎与 stali 项目非常接近(唯一的区别是 BSD 用户空间要求)。
我不太了解这个项目的阶段,但你可以在项目邮件列表中获得一些帮助。
据我所知,BSD 工具大量使用直接系统调用,很少使用 POSIX API。我不相信 bsd 人员使用大量 #ifdef 编写代码来获得完全兼容的程序(但我可能是错的)...
suckless 站点将 plan9 userland 移植到 unix(也基于 plan9port),它被称为 9base(并且可以在 archlinux repo 上安装)。
我想你会遇到我过去尝试组装类似发行版时遇到的同样问题:摆脱 GNU 需要付出太多努力...基本系统很简单,但对于一些有用的东西,你需要一个C 编译器然后你就没有好的选择了。 GCC 是 gnu 并且有许多 gnu 依赖项,并且出于显而易见的原因,理智的 freebsd gcc 端口永远不会在 linux 上工作。
我目前的尝试是帮助完成 linux 的 ken-c(或 9-cc)端口。
关于linux - 是否可以运行 BSD userland 来替代带有 linux 内核的 GNU coreutils?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34794045/