简体   繁体   English

如何从源代码创建 Linux 发行版?

[英]How can I create a Linux distro from the source code?

if I want to create a Linux distro like kali, parrot.如果我想创建像 kali、parrot 这样的 Linux 发行版。 how can I download the source code of a Linux distro and edit the source code like adding tools, drivers, desktop environment, software, etc?如何下载 Linux 发行版的源代码并编辑源代码,如添加工具、驱动程序、桌面环境、软件等? I want a roadmap or guidance to create a Linux distro then extract it into an ISO image?我想要创建 Linux 发行版然后将其提取到 ISO 映像中的路线图或指南? and what about Raspberry Pi also?树莓派呢?

You should look into the Yocto project.您应该查看 Yocto 项目。 I don't have much experience with traditional OS development, although Yocto is quickly becoming the defacto for embedded Linux development, and the Pi has huge yocto support directly from openembedded.我对传统操作系统开发没有太多经验,尽管 Yocto 正在迅速成为嵌入式 Linux 开发的事实,而且 Pi 直接从 openembedded 获得了巨大的 yocto 支持。

Yocto essentially provides a very base version of an OS, which they call poky that is used to be built upon through different 'layers'. Yocto 本质上提供了一个非常基础的操作系统版本,他们称之为 poky,用于通过不同的“层”构建。 These layers can provide anything from hardware support (BSP), to kernel configurations, to systemd/v services, to graphical environments, etc. While Yocto does simplify the OS dev process greatly, there is still a huge learning curve.这些层可以提供任何东西,从硬件支持 (BSP) 到 kernel 配置,到 systemd/v 服务,再到图形环境等。虽然 Yocto 确实大大简化了 OS 开发过程,但仍然存在巨大的学习曲线。

The great thing is that a beginner could easily throw in the meta-raspberrypi later, and whip up their own GUI with Qt, while at the same time an experienced pro could create their own SoC, develop their own BSP layer, and have their own fully fledged OS running.很棒的是,初学者可以在以后轻松地投入 meta-raspberrypi,并使用 Qt 创建自己的 GUI,同时经验丰富的专业人士可以创建自己的 SoC,开发自己的 BSP 层,并拥有自己的完全成熟的操作系统运行。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 如何在Linux发行版上将SFML C ++源代码从Linux编译到Windows? - How to Compile SFML C++ Source Code From Linux to Windows on a Linux Distro? 如何从 linux 内核代码中获取发行版名称和版本? - How to get distro name and version from linux kernel code? 如何在 Linux 上编译适用于任何发行版的 C? - How can I compile C on Linux that will work on any distro? 如果Linux Distro没有从正在运行的Java程序中安装它,我如何告诉Linux Distro apt-get安装LibVLC? - How can I tell a Linux Distro to apt-get install LibVLC if it doesn't have it from a running Java Program? 如何获取linux实用程序尾部的源代码? - How can I get the source code for the linux utility tail? 典型Linux发行版中最旧的代码 - Oldest code in a typical Linux distro 我在哪里可以获得 Linux 的源代码? - Where can I get the source code for Linux? 我可以在 WSL 2 中使用 Docker 的 Linux 文件系统来绑定挂载目录而不是安装 Linux 发行版吗? - Can I use Docker's Linux filesystem in WSL 2 to bind mount a directory instead of installing a Linux distro? 如何在 Windows 上的 WSL2 中强制我的 Linux 发行版使用 Linux 版本的 nvm 而不是 Windows 版本? - How do I force my Linux distro in WSL2 on Windows to use the Linux version of nvm and not the Windows version? 从java中查找linux发行版的名称 - Find name of linux distro from java
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM