什么是LFS和gentoo CFLAGS参数详解

LFS(Linux From Scratch)是一种通过源码编译构建个性化Linux系统的方法,旨在帮助用户理解编译参数、补丁和脚本工作流程。文章介绍了LFS的制作过程和意义,强调了理解而非机械编译的重要性。接着,文章详细探讨了Gentoo系统中CFLAGS参数的作用,包括不同选项对效能、稳定性和编译时间的影响,为用户提供了安全及实验性的CFLAGS配置建议,以优化程序性能和启动速度。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.

LFS官网:http://www.linuxfromscratch.org/

LFS──Linux from Scratch,就是一种从网上直接下载源码,从头编译LINUX的安装方式。它不是发行版,只是一个菜谱,告诉你到哪里去买菜(下载源码),怎么把这些生东西( raw code) 作成符合自己口味的菜肴──个性化的linux,不单单是个性的桌面。

Linux From Scratch项目简称编辑

Linux From Scratch项目简称LFS,它提供具体的步骤、特定的补丁、必须的脚本,从而提供一个简便的创建Linux发行版的途径。LFS并不是一个发行版,但是它可以作为制作初级发行版的良好练习。

制作

  • 制作过程
    快速浏览官方文档即可(没必要仔细翻阅,抓几个 关键点即可)
  • 一般套路
    以下步骤在LFS制作中会重复几次乃至几十次:
1,
tar xf foo-version.tar.*
cd foo-version
./configure --prefix=xxx --xxx=xxxx ······
make
make install
cd ..
rm -rf foo-version
2,
tar xf foo-version.tar.*
cd foo-version
patch -Np1 -i ../xxx.patch
mkdir ../foo-build
cd foo-build
../foo-version/configure --prefix=xxx --xxx=xxxx ······
make
make install
cd ..
rm -rf foo-version foo-build
具体编译参数复制文档中对应部分即可
  • 实际意义
    LFS的意义不在于机械地编译,事实上,按照文档描述,简单地点击键盘即可生成一个简略的发行版,这并不是存在时间达13年的LFS的目的。LFS的意义在于让使用者理解编译参数的作用,理解补丁的作用,理解LFS附带的脚本的工作过程,从而达到脱离LFS、独立制作并完善发行版的目的。
    由于LFS提供的是一个通用的Linux发行版制作流程,LFS并不能保证制作最终产物符合制作者个人口味,也不能保证质量。

=============================================================================================================================

                                                                                                                CFLAGS参数详解

相信使用lfs,gentoo的用户对CFLAGS这个东东会比较了解 :)
不少Linuxer对Gentoo,LFS的印象是速度比其他发行版要快的多!  
而这个CFLAGS就是达到最佳效能的东东。
如果你想编译出的程序更快,运行的更好。
快来挑选出最符合自己的CFLAGS吧! ^_^

CFLAGS 简介  

CFLAGS 是决定 Gentoo 系统效能与稳定的关键之一。恰当的 CFLAGS 能在效能、编译时间、与系统稳定度中取得平衡,失败的 CFLAGS 可能导致编译失败,甚至系统损毁。那么,在茫茫 CFLAGS 海中,如何才能捞到命中注定那根针呢?  

   此文件的 CFLAGS 针对 x86 与 x86-64 平台上的 GCC 3.4 (GNU Compiler Collections - http://gcc.gnu.org/) 为主,若您使用其它编译器 (如 icc、compaq c compiler) 或其它平台 (如 PowerPC、Alpha),本章可能 50% 以上的东西您都用不上。  

   各位请先参考笔者从网络上整理出,有关服务器与工作站需求的信息。当然,服务器或桌面的需求绝对不只这些,这里仅列出跟设计 CFLAGS 比较有关的项目。以下是整理出的列表:  

1. 服务器系统:  
* 长时间启动 (一天 24 小时,一年 365 天,全年无休)  
            * 非常稳定 (uptime 在 ArrayArray.ArrayArrayArray% [注] 以上)  
            * 高安全性 (别怀疑,CFLAGS 跟安全性也有很大的关系)  
            * 在长时间启动的前提下,能自己照顾自己。  
* 效能不是第一考虑  
* 互动反应不用很快,够用就好。   
2. 桌面、工作站:  
* 启动时间没有那么长 (使用者要用的时候才开机)  
   

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值