【LFS/从0构建Linux系统】软件包与补丁安装及环境配置

笔者从虚拟机换回了开发板,系统仍然是Ubuntu。

文章目录

  • 1. 安装包与补丁的安装
    • 1.1 wget指令
    • 1.2 aria2指令
    • 1.3 使用阿里云的整合包
  • 2. 最后的准备阶段(环境配置)
  • 3 .总结

在上篇文章,我们完成lfs的硬件准备和磁盘分区。
最终达成这个效果:
在这里插入图片描述

那么接下来就是软件包和补丁的安装,已经最后的准备工作了。

1. 安装包与补丁的安装

打开LFS的官方文档,我们可以看到官方已经把所有要下载的安装包的官方链接已经给出了。
在这里插入图片描述

那么剩下的步骤就是安装了。
但是这里多链接一个一个的手动安装还是太花费时间了,作为程序员还是不想要把时间花在这样的重复劳动上。为此我找到了一个所有软件链接的整合版本,安装就只需要一个指令即可。
在这里插入图片描述

安装包与补丁
拿到这些链接后,打开Linux,创建一个文本文件,假设叫urls.txt
把所有链接复制到文件中后。下面我介绍两个指令给读者选择,选择一个喜欢的指令下载即可。

1.1 wget指令

在终端内使用wget指令批量下载文件。

wget -i urls.txt

-i 参数告诉wgeturls.txt文件中读取链接并下载
当然我们在下载时需要下载到指定的目录中mnt/lfs.sources

wget -i urls.txt -P /mnt/lfs/sources

1.2 aria2指令

如果你希望提高下载的速度,可以使用aria2,它支持多线程下载,速度更快。
如果你没有安装,输入以下指令

sudo apt install -y

下载格式:

aria2c -i urls.txt

下载到指定目录

aria2c -i urls.txt -d /mnt/lfs/sources

那么这两种指令就介绍完毕了,你可以选择你喜欢的一个安装即可。
相信大家都知道,在安装国外软件时,下载速度都超级慢,所以你肯定要挂个梯子什么的。如果没有,我这还有一种方法。

1.3 使用阿里云的整合包

龟速的下载速度是很难忍受的,LFS这个项目在世界范围都是很受欢迎的,国内也不例外,所以肯定会有人帮我做软件包的整合的。我找的是阿里云的整合包,链接如下:阿里云
读者在下载时,应挑选比较新的软件包安装,我下载的24年9月的,我使用的官方文档也是24年9月的版本。
把压缩包解压后,软件包和补丁就都出来了:
在这里插入图片描述

还是非常多的。

2. 最后的准备阶段(环境配置)

根据的文档的指示,我们选哟创建一个lfs的用户,这个在之前我就让大家创建好了,同时还要许多目录的创建,这个也是如此。
所以最后的准备阶段吗,我只会讲解在前文我们没有做的工作。
为bash创建两个新的启动脚本,以lfs的身份,执行以下命令,创建一个新的.bash_profile.

cat > ~/.bash_profile << "EOF"
`exec env -i HOME=$HOME TERM=$TERM PS1='\u:\w\$ ' /bin/bash`
EOF

在以 lfs 用户登录或从其他用户使用带 “-” 选项的 su 命令切换到 lfs 用户时,初始的 shell 是一个_登录_ shell。它读取宿主系统的 /etc/profile 文件 (可能包含一些设置和环境变量),然后读取 .bash_profile。我们在 .bash_profile 中使用 exec env -i…/bin/bash 命令,新建一个除了 HOME, TERM 以及 PS1 外没有任何环境变量的 shell 并替换当前 shell。这可以防止宿主环境中不需要和有潜在风险的环境变量进入构建环境。
新的 shell 实例是 非登录 shell,它不会读取和执行 /etc/profile 或者 .bash_profile 的内容,而是读取并执行 .bashrc 文件。现在我们创建一个 .bashrc 文件:

cat > ~/.bashrc << "EOF"
set +h
umask 022
LFS=/mnt/lfs
LC_ALL=POSIX
LFS_TGT=$(uname -m)-lfs-linux-gnu
PATH=/usr/bin
if [ ! -L /bin ]; then PATH=/bin:$PATH; fi
PATH=$LFS/tools/bin:$PATH
CONFIG_SITE=$LFS/usr/share/config.site
export LFS LC_ALL LFS_TGT PATH CONFIG_SITE
export MAKEFLAGS=-j$(nproc)
EOF

在这里插入图片描述

具体内容的原因请访问官方文档:官方文档
最后,为了保证构建临时工具所需的环境准备就绪,强制 bash shell 读取刚才创建的配置文件:

source ~/.bash_profile

在文档的最后还有关于SBU和测试套件的解释,请大家自行查阅。

3 .总结

由此我们就完成了从0构建Linux系统的全部的准备阶段了,在下一篇文章就要开始构建 LFS 交叉工具链和临时工具。
期待你的关注,本系列长期更新。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/68556.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

微服务网关,如何选择?

什么是API网关 API网关&#xff08;API Gateway&#xff09;是微服务架构中的一个关键组件&#xff0c;它充当了客户端与后端服务之间的中间层。其主要功能包括请求路由、协议转换、负载均衡、安全认证、限流熔断等。通过API网关&#xff0c;客户端无需直接与多个微服务交互&a…

海康MV-EB435i立体相机SDK安装(ROS 2)

文章目录 一、简介二、驱动配置小结 一、简介 MV-EB435i相机是一款低成本、小体积、配置全面的立体相机&#xff0c;凭借硬件级的深度图像处理方案&#xff0c;相机可在高性能输出的同时维持低功耗的水平。相机采用海康MV3D SDK&#xff0c;并提供跨平台支持&#xff0c;广泛应…

中国数字安全产业年度报告(2024)

数字安全是指&#xff0c;在全球数字化背景下&#xff0c;合理控制个人、组织、国家在各种活动中面临的数字风险&#xff0c;保障数字社会可持续发展的政策法规、管理措施、技术方法等安全手段的总和。 数字安全领域可从三个方面对应新质生产力的三大内涵:一是基于大型语言模型…

一次统计信息收集导致的Oracle数据库查询慢分析

客户反馈在18.30-19.00之间&#xff0c;数据库运行特别慢&#xff0c;19点后就恢复正常。根据客户提出的信息&#xff0c;查看对应时段的awr报告&#xff0c;发现在此时段内&#xff0c;对表XXX_XXXX_SCAN存在着大量的查询操作。同时&#xff0c;查看该表的统计信息时间&#x…

python编程-OpenCV(图像读写-图像处理-图像滤波-角点检测-边缘检测)角点检测

角点检测&#xff08;Corner Detection&#xff09;是计算机视觉和图像处理中重要的步骤&#xff0c;主要用于提取图像中的关键特征&#xff0c;以便进行后续的任务&#xff0c;比如图像匹配、物体识别、运动跟踪等。下面介绍几种常用的角点检测方法及其应用。 1. Harris角点检…

网络编程 | UDP套接字通信及编程实现经验教程

1、UDP基础 传输层主要应用的协议模型有两种&#xff0c;一种是TCP协议&#xff0c;另外一种则是UDP协议。在上一篇博客文章中&#xff0c;已经对TCP协议及如何编程实现进行了详细的梳理讲解&#xff0c;在本文中&#xff0c;主要讲解与TCP一样广泛使用了另一种协议&#xff1a…

大象机器人发布首款穿戴式数据采集器myController S570,助力具身智能数据收集!

myController S570 具有较高的数据采集速度和远程控制能力&#xff0c;大大简化了人形机器人的编程。 myController S570 是一款可移动的轻量级外骨骼&#xff0c;具有 14 个关节、2 个操纵杆和 2 个按钮&#xff0c;它提供高数据采集速度&#xff0c;出色的兼容性&#xff0c…

数据库存储上下标符号,sqlserver 2008r2,dm8

sqlserver 2008r2&#xff1a; 数据类型需要用nvarchar插入数据时字符串前需要用N create table test( col1 varchar(50), col2 nvarchar(50) ) insert into test(col1,col2) values(U⁴⁵⁶⁷⁸⁹⁰D₁₂₃₄₅₆₇₈₉₀,U⁴⁵⁶⁷⁸⁹⁰D₁₂₃₄₅₆₇₈₉₀) insert into…

海康工业相机的应用部署不是简简单单!?

作者&#xff1a;SkyXZ CSDN&#xff1a;SkyXZ&#xff5e;-CSDN博客 博客园&#xff1a;SkyXZ - 博客园 笔者使用的设备及环境&#xff1a;WSL2-Ubuntu22.04MV-CS016-10UC 不会吧&#xff1f;不会吧&#xff1f;不会还有人拿到海康工业相机还是一脸懵叭&#xff1f;不会还有人…

为什么要内存对齐?

内存对齐 初步认识 内存对齐是什么&#xff1f;从下面的代码可以比较直观地有一个简单的认识&#xff1a; #include <iostream>using namespace std;struct s1 {int i;char c1;char c2; };struct s2 {char c1;int i;char c2; };struct s3 {char c1;char c2;int i; };i…

【SQL 中的分组查询与联合查询详解】

文章目录 SQL 中的分组查询与联合查询详解1. GROUP BY分组查询1.1 语句格式1.2 示例说明1.2.1 分别查询哥哥组和弟弟组的英语成绩总和1.2.2 查询哥哥组的所有成绩总和 2. 联合查询2.1 内连接2.1.1 语法格式2.1.2 执行过程 2.2 外连接2.2.1 左外连接2.2.2 右外连接 2.3 自连接2.…

《FMambaIR:一种基于混合状态空间模型和频域的方法用于图像恢复》学习笔记

paper&#xff1a;(PDF) FMambaIR: A Hybrid State Space Model and Frequency Domain for Image Restoration 目录 摘要 一、引言 二、相关工作 1、图像恢复 2、频率学习 3、状态空间模型&#xff08;SSM&#xff09; 三、框架 1、基本知识 2、整体框架 3、F-Mamba…

51c自动驾驶~合集47

我自己的原文哦~ https://blog.51cto.com/whaosoft/13083194 #DreamDrive 性能爆拉30%&#xff01;英伟达&#xff1a;时空一致下的生成重建大一统新方案~ 从自车的驾驶轨迹中生成真实的视觉图像是实现自动驾驶模型可扩展训练的关键一步。基于重建的方法从log中生成3D场景…

SpringBoot项目打war包要点

1. 修改pom文件packaging 2. 不使用内置tomcat 3. 加一个类 4. 修改外部tomcat配置文件 5. 修改nginx配置文件&#xff0c;构建集群 资料来自网络

GMM高斯混合聚类算法(Matlab)

目录 效果一览基本介绍程序设计参考资料 效果一览 基本介绍 GMM高斯混合聚类算法 matlab2023b语言&#xff0c;一键出图&#xff0c;直接运行 1.代码注释清晰&#xff0c;自行解读容易。 2…输出图例如图所示包括&#xff1a;聚类图(聚类结果图)&#xff0c;协方差矩阵类型…

华为数据中心CE系列交换机级联M-LAG配置示例

M-LAG组网简介 M-LAG&#xff08;Multi-chassis Link Aggregation&#xff09;技术是一种跨设备的链路聚合技术&#xff0c;它通过将两台交换机组成一个逻辑设备&#xff0c;实现链路的负载分担和故障切换&#xff0c;从而提高网络的可靠性和稳定性。下面给大家详细介绍如何在…

Vue2.0的安装

1.首先查看是否已经安装了node.js 选择以管理员方式打开命令提示符&#xff08;权限较高&#xff09;&#xff0c;或者通过cmd的方式打开 打开后输入node -v 查看自己电脑是否安装node&#xff0c;以及版本号 node -v 如果没有的话&#xff0c;请查看Node.js的安装 2.Vue和脚…

GAN 用于图像增强

工程需求&#xff0c;临时学一下gan的原理和基于图像增强的实现 原理 论文链接 Generative Adversarial Nets 我们提出了一个通过对抗过程来估计生成模型的新框架&#xff0c;其中我们同时训练两个模型&#xff1a;捕获数据分布的生成模型G和估计样本来自训练数据而不是G的…

sqlfather笔记

这里简单记录写学习鱼皮sqlfather项目的笔记&#xff0c;以供以后学习。 运行 将前后端项目clone到本地后&#xff0c;修改对应配置文件运行项目。 后端 1.配置好mysql后运行这个sql文件建立对应的表。 2.修改数据库密码 3.修改完后运行启动类即可 4. 启动结果 5.查看A…

【大数据】机器学习------支持向量机(SVM)

支持向量机的基本概念和数学公式&#xff1a; 1. 线性可分的支持向量机 对于线性可分的数据集 &#xff0c;其中(x_i \in R^d) 是特征向量 是类别标签&#xff0c;目标是找到一个超平面 &#xff0c;使得对于所有 的样本 &#xff0c;对于所有(y_i -1) 的样本&#xff0c;…