Skip to content

Liddy’s Linux 11.0 编译日志 Day1

这里是奈野千魔,这个世间的Liddy’s Linux的制作者,或者说编译者。
从今日起就要编译Liddy’s Linux ver 11.0,Liddy’s Linux离不开Linux From Scratch(以下及之后的日志当中简称为LFS,官方网站:https://www.linuxfromscratch.org/)。
现在是2021年9月15日…距离11.0版本的LFS发布有15日罢,不算长的时间。总之,这次编译Liddy’s Linux所基于的LFS正是11.0版本。

Liddy取自幻想乡中的蕾迪猫的名称,蕾迪猫是一位优雅的猫妖少女,幻想乡间亦有着冬之猫妖(代表着幻想乡的冬日)的美名。
最为擅长抚琴的同时,蕾迪猫亦很喜欢绘画,所以根据蕾迪猫的这一爱好,再加上蕾迪猫本身的优雅,Liddy’s Linux的概念诞生了…
这是为诸位画使打造的优雅的操作系统,无论看上去还是实际操作起来。希望能够打造出一份画使们喜欢使用并且能够确实用到的操作系统。

蕾迪猫喜欢KDE桌面环境,所以这部操作系统也准备搭建KDE作为桌面环境。
会收录所有的KDE桌面程式作为基本(当然会包括其他Linux所需的所有基本库以及程式等),再添上不少画使们需要且喜欢的绘画或是处理软件等,例如Krita。
因为是基于LFS,所以编译链(GCC等)也会包含其中。

现在的咱对于Linux的经验与知识仅仅局限于以前数次编译成功LFS,但是暂时也足够了。
编译的同时也会继续进行Linux的深造,首先从Shell脚本开始,然后再进一步了解Linux,最后是能够自由使用C与C++等对Linux进行内核至所有相关程式包的定制。

以前编译过LFS的经历及经验,请参照:https://nanochima.lofter.com/view
(2019年4月开始)

总之不多说…按照LFS的指引开始罢。LFS编译成功之后是BLFS,随后是其他程式包的编译,最后是系统的美化。
所有编译过程(包括所编译的软件包,以及编译过程间遇到的所有特殊情况等)都会这样记录下来。

首先是咱用于编译Liddy’s Linux所使用的电脑配置,是一台DELL笔记本电脑,配置不太高…但是足够用就可以了,购买日期为2016年年底。

然后是咱的硬盘分区配置。使用移动硬盘(机械硬盘)作为载体,硬盘的分区配置如下。

分为用于UEFI启动的分区(/dev/sda1),搭建LFS工具链所需的宿主系统——安装了基本编译链的Kubuntu 21.04(/dev/sda2),用于备份以及存放杂七杂八的分区(/dev/sda4)以及搭建存放Liddy’s Linux所使用的分区(/dev/sda3)。实机运行Liddy’s Linux时,根目录(/)所对应的分区正是/dev/sda3。

全部准备完毕…另外还要说一点,因为还有其他事情需要完成,所以每日用于编译的时间只有12小时(每日12时至24时),抱歉。
咱的英文也不好,现在暂且只有大概知晓LFS Book与BLFS Book中所写英文的大概意思,以及需要运行什么命令/脚本这样的能力…而且还是借助以前多次成功编译LFS的经验才能够看懂。不过没关系…需要的英文造诣也会慢慢掌握。

正式开始编译。

存放Liddy’s Linux的分区挂载于/lfs中(文件系统已格式化为ext4),今后亦同。

已将所有源码包下载完毕,并解压与存放于/lfs/sources间。

已按照LFS第四章所提示,于宿主系统间配置了搭建临时工具所用的临时用户:lfs,并且建立了存放临时工具的文件夹:$LFS(LFS=/lfs)/tools。

编译临时工具所需的第一个程式包(5.2. Binutils-2.37 – Pass 1)时顺带着测了一下对应于这台电脑的SBU:

real 6m5.984s
user 5m2.274s
sys 0m57.775s

…看起来需要很长很长的时间才能够编译完毕Liddy’s Linux。

编译临时工具(5.3. GCC-11.2.0 – Pass 1 )时遇到问题,提示如下:

configure: error: *** A compiler with support for C++11 language features is required.

…经过检查,应该是宿主系统间/usr/bin/awk与/usr/bin/yacc链接指向错误,于是暂时退出lfs用户,于终端间以root进行登陆之后,输入了如下命令,将/usr/bin/awk与/usr/bin/yacc指向LFS所规定的那样(iii. General Compilation Instructions )…

mv -v /usr/bin/awk /usr/bin/awkbackup
ln -sv gawk /usr/bin/awk
mv -v /usr/bin/yacc /usr/bin/yaccbackup
ln -sv bison /usr/bin/yacc

…重新试图编译却依旧显示错误…看来应该是其他原因。试着于宿主系统间输入并且运行2.2. Host System Requirements中所给的脚本(root权限),得到以下两条错误信息:

/bin/sh -> /usr/bin/dash
ERROR: /bin/sh does not point to bash

version-check.sh: line 51: g++: command not found
g++ compilation failed

…第一条可以忽略,第二条需要解决。咱使用的宿主系统是debian系列中的Kubuntu…输入以下命令:

sudo apt-get install g++

问题解决…继续进行编译。

LFS第六章顺利完成,第七章开始需要使用chroot进入临时工具。

LFS所需基本文件夹/文件按照书中配置完毕,7.6已完成…明日从LFS书中7.7继续编译。

Published inLiddy's Linux编译日志

Be First to Comment

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

3 × 4 =