从LFS到BLFS轻松上手
——关于编译LFS/BLFS的可行性报告
青 铜 镜
严正声明:本贴可能含有危险成份,未满18岁的网友,为了您的身体健康、思想健康和机器健康着想,请勿阅读!
严重警告:如果您决定继续阅读下去,那么表明您愿意承担因阅读本贴后所产生的不可预知的后果!
版权声明:本水贴部分为唐师父口述,部分引自BLFS官方文档,青铜镜执笔!一般人我不告诉他!
引 言
LFS/BLFS是一个浩大的软件编译安装工程,耗时耗精力。而且,有好多朋友辛辛苦苦花了几天甚至是几个星期的时间编译安装LFS,到了结束时还不一定 能够顺利启动系统,最后只好放弃,实在是让人不爽。本贴的目的,就是让喜欢LFS的朋友能够简单、快速、有效地完成从LFS到BLFS的艰巨任务,让 LINUX在机器上流畅地运行起来。
唐师父说:世界是美好的,生命是珍贵的!不要在折腾电脑上消耗太多的精力!在电脑面前呆得太久了,这样不好!电脑只是一种工具,而不要把它当成玩具!这样妈妈会不放心的!请问:你妈贵姓?
本水贴共分三集,即上集、下集和续集。唐师父说:青铜镜,你这样写贴,难道就不能一个就写完?这样写贴,你还有时间晒衣服吗?青铜镜答:根据内容不同分为 三集来写,主要是为了方便查阅。上集主要是介绍编译安装LFS,下集主要是介绍BLFS,编译方向是KDE桌面。续集则是对编译KDE桌面多媒体功能的补 充介绍。再说了,人家琼瑶老太太写《还珠格格》,都连续写了三部,俺为何就不能写三集?唐师父说:打雷啦,下雨收衣服啊!
小平同志说过:不管黑猫白猫,抓得到老鼠的就是好猫。
青铜镜模仿着说:不管用啥方法,能够装上LFS/BLFS的就是管用的方法!
唐师父读易经:乾以易知,坤以简能。易则易知,简则易从。易知则有亲,易从则有功。有亲则可久,有功则可大。可久则贤人之德,可大则贤人之业。易简,而天下之理得矣;天下之理得,而成位乎其中矣。
哈哈哈!上 集 轻松搞定LFS
第一章 启 动
到www.linuxfromscratch.org下载LiveCD,刻成光盘。俺青铜镜当时下载的LiveCD的版本号是6.2-1。不同版本号的LiveCD是有区别的。请各位看官注意!将LFS的LiveCD放将光驱,从光驱启动,将会看到以下按系列号顺序出现的步骤:
01.01
boot:
按F1将会出现帮助画面。
可以设置显示屏的显示配置:
引用:
795=1280*1024*24 794=1280*1024*16 792=1024*768*24 791=1024*768*16 789=800*600*24 788=800*600*16 |
可以在boot后输入
linux vga=792或是其他数字以设置屏幕显示的配置。
也可以输入
引用:
设置时区。
01.02
Configure System Clock
配置系统时钟
02.01 Asia/Shanghai
02.02 localtime
01.03
Regional setting
Choose your locale
中文有以下各项:
引用:
03.01 Chinese Traditional BIG5 03.02 Chinese Traditional UTF8 03.03 Chinese Traditional EUC-TW 03.04 Chinese Simplified GB2312 03.05 Chinese Simplified GB18030 03.06 Chinese Simplified GBK 03.07 Chinese Simplified UTF-8 |
俺青铜镜选的是Chinese Simplified UTF-8这一项。这样,当LiveCD启动startx以后,X的界面就是中文的,很清爽啊!
01.04
Configrm/edit Setting
这里显示默认的自动配置是:
引用:
locale: zh_CN.UTF8 Console keymap: defkeymap Console font: default8*16 autoconverted from charset: X keymap: us |
01.05
Press Enter to activate this virtual console
出现以上提示时,按回车进入控制台。至此,LiveCD算是正式启动完成了。
01.06
进入控制台以后,先对硬盘进行分区,输入cfdisk命令进行分区。具体的分区方法很简单,这里就省了。
以下是我的分区:
引用:
Name PartType FS Type Size(MB) hda1 Primary linux ext3 3960.95 hda2 Primary linux swap/solaris 403.04 |
01.07
格式化分区:
mke2fs -jv /dev/hda1 (这是俺的硬盘分区设备号,俺只分一个区,后面fstab文件要用到!)
格式化交换分区,同时启动它:
引用:
mkswap /dev/hda2 swapon /dev/hda2 |
01.08
启动X,进入的是XFce桌面管理器:
startx
01.09
Xfce的下面是控制台,控制台有“终端防真程序”,点击一下,启动它。还有一部手册,图标是一个救生圈。打开手册后,将地址指到: //usr/share/LFS-BOOK-6.2-HTML找到indel.html,打开LFS手册。这样,你就可以一边看着手册,一边输入命令了。 哈哈哈。青铜镜的意见和建议:一般情况下,如果命令相对比较短而且容易记住,推荐用手工输入;如果命令比较长而且复杂,甚至是容易出错的,建议用复制的方 法输入命令!要不到了最后系统收工时,因为其中的命令出错而让人前功尽弃,那才是让人不爽!比如下面这条命令:
引用:
GCC_INCLUDEDIR=`dirname $(gcc -print-libgcc-file-name)`/include && find ${GCC_INCLUDEDIR}/* -maxdepth 0 -xtype d -exec rm -rvf '{}' \; && rm -vf `grep -l "DO NOT EDIT THIS FILE" ${GCC_INCLUDEDIR}/*` && unset GCC_INCLUDEDIR |
飞豹大侠的作法是,不管命令长短,一般都是手工输入……太长的,用脚工,据说是佛山无影脚。哈哈哈。对于飞豹大侠过于个性化或是偏执的行为, 青铜镜的看法是:不支持、不赞成、不提倡、不反对、不关注。反正是萝卜青菜,各有所爱嘛,更何况LFS是个性化很强的东西,飞豹大侠爱咋折腾,我们只管看 热闹就是了。没事还可以冲他泼冷水,恶搞一下下也好。
据唐师父所掌握的可靠消息,近来江湖人才紧缺啊!为了缓解江湖人才紧缺的问题,飞豹大侠作出了一个伟大的、具有划时代意义的决定:他准备要出书了!此乃青 铜镜的独家新闻!希望广大LINUX粉丝支持飞豹大侠具有里程碑意义的决定!有部戏叫做《拿什么来拯救你,我的爱人》,青铜镜想来想去,正确的答案是: 钱!当然是得拿钱!我们要支持飞豹大侠,当然得拿出点钱意来呀!为此,青铜镜决定赞助飞豹大侠人民币一块钱,一块钱可以买一个葱油大饼,当飞豹大侠写书到 半夜时,肚子饿了,可以买一个葱油大饼吃!当然,要是飞豹大侠拿青铜镜赞助的一块钱去买一个鸡蛋的话,那样的话前景就更加美好了:鸡蛋里孵出小鸡,小鸡又 生下一堆鸡蛋,又孵出一群小鸡,子子孙孙生生不息,飞豹大侠就可以开个养鸡场了。呵呵…… 还有,江湖传闻天花大侠在修炼《葵花宝典2007》,飞豹大侠您老人家得赶紧写书稿呀,要不等你的书出来时,天花大侠的武功早炼好了,那时天花大侠就可以 千秋万载,一统江湖了……
01.10
转到“终端防真程序”,开始LFS的制作历程。剩下的工作,如果你是新手或者是比较懒,只要将手册中的命令选中,然后转到“终端防真程序”里面粘贴、回车就行了。第二章 配 置
青铜镜下载的LiveCD是6.2-1版本的,LiveCD中的jhalfs是1.0,这个jhalfs-1.0比较爽啊,只要稍做配置一下,就可以让电 脑自动给俺们编译LFS了,实在是方便呀!当然,也有人反对说,我们做LFS的目的就是学习,还是手工输入一条一条命令比较好。其实青铜镜在前面说过了, 俺想简单、快速、有效地完成从LFS到BLFS的艰巨任务,俺要学习LFS,俺已将LFS的手册打印出来了,拿在手上,天天都可以拜读,当然啦,俺这也是 一种学习方法,你要一条一条命令输入,青铜镜坚决不拦着你,还在精神上支持你哦!唐师父说:我佛慈悲!大伙要爱惜身体呀!
02.01
创建分区好了以后挂载目录
引用:
export LFS=/mnt/lfs mkdir -pv $LFS mount -v -t ext3 /dev/hda1 $LFS (各位看官,请注意自己的分区设备号) |
02.02
配置jhalfs文件。点开“终端防真程序”,当前的目录就是root,里面就有jhalfs-1.0这个文件夹,先进入jhalfs-1.0这目录在里面编辑配置文件。
02.02.01
修改LFS/config,输入命令:
cd jhalfs-1.0
vi LFS/config
下面是LFS/config文件的全部内容及编辑说明:
引用:
#### # # Configuration file for the LFS module # # $Id: config 2822 2006-07-16 10:06:03Z manuel $ # ##### #--- Location of fstab file (if empty, a template is created) FSTAB= (注:留空!我们也可以先将fstab写好以后,放到指定位置并在这里填上fstab的路径。) #--- Fully qualified path to a kernel config file # If no config file is specified the kernel is NOT compiled CONFIG= (注:留空!我们也可以先行将编译内核的.config放到指定位置并在这里填上路径。) # Get the kernel package and patches even if no configutation file # has been supplied? 0(no)/1(yes) GETKERNEL=1 (注:修改这里,将原来的0改为1) #--- Book's sources directory # If you have previously checked out the book from the repository BOOK=/usr/share/LFS-BOOK-6.2-XML(注:这里原来是空的,将手册的路径写到这里!) #==== INTERNAL VARIABLES ==== # Don't edit it unless you know what you are doing #--- Extra files that need be copied to $JHALFSDIR FILES="" #--- Default stylesheet XSL=lfs.xsl #--- Book version LFSVRS=development TREE=trunk/BOOK #--- Name of the makefile MKFILE=$JHALFSDIR/Makefile |
修改好上面的配置以后,保存退出。(唐师父说:按esc键,接着输入冒号:,在冒号后面输入wq,回车退去。)
02.02.02
修改common/config,输入命令:
vi common/config
下面是common/config文件的全部内容及编辑说明:
引用:
##### # # common configuration file # # $Id: config 2799 2006-06-20 23:43:07Z georgeb $ ##### declare -r SVN="svn://svn.linuxfromscratch.org" declare -r LOG=000-masterscript.log #--- Mount point for the build BUILDDIR=/mnt/lfs (注:这里原来是build_dir,改为lfs。) # Create SBU and disk usage report 0(no)/1(yes) # NOTE: requires to have bc installed on the host REPORT=1 #=== Getting packages === # Files will be retrieved from the local archive SRC_ARCHIVE # (if defined) or the 'net and will be stored in $BUILDDIR/sources #--- Download the source packages 0(no)/1(yes) GETPKG=0 #--- The local repository for packages/file # Used only if GETPKG = 1 # Any missing file will be downloaded and archived here, # if the user has the right priviledges. SRC_ARCHIVE=$SRC_ARCHIVE # --- Server used if the file isn't found in SRC_ARCHIVE. # As a last resort, the file will dowloaded from upstream, if possible. SERVER=ftp://ftp.lfs-matrix.net #=== Build options === #--- Automatically run the makefile once it has been created 0(no)/1(yes) RUNMAKE=0 #--- Optimize the build [0-2] # 0 = no optimization # 1 = optimize final system only # 2 = optimize both temporary tools and final system # Optimization values are set in optimize/* files OPTIMIZE=0 #--- Run test suites [0-3] # 0 = none # 1 = only chapter06 Glibc, GCC and Binutils testsuites # 2 = all chapter06 testsuites # 3 = all chapter05 and chapter06 testsuites # (in CLFS, alias to 2) TEST=1(如果在编译安装过程中你需要测试,那么这里不用修改。俺从来都不test,因此俺将这里修改为0。) #--- Run the stripping phases 0(no)/1(yes) STRIP=1 #--- page definition for groff letter/A4 PAGE=letter (我国公文习惯使用的纸张尺寸标准是A4,这里改为A4。) #--- set default timezone. TIMEZONE=${TZ:-GMT}(注:这里是时区。青铜镜一直填写Asia/Shanghai,晨想姐姐推荐我们中华人民共和国的时区。) #--- install the optional vim-lang package 0(no)/1(yes) VIMLANG=1 #--- Language information in /etc/profile See <locale -a> for values LANG=$LANG (注:这里是系统语言。推荐en_US.UTF8。有一次,青铜镜在前面第一章第三小节选的是Chinese Simplified UTF-8这一项,这里没有修改,导致jhalfs运行到第六章的6.45. Man-DB-2.4.3时停止了,没办法,只得手工继续编译安装,很不爽!其实,刚刚装好的LFS都是满屏鸟语的,想汉化,还得到后来装上KDE时才方 便呀!) LC_ALL=$LC_ALL # (not used in LFS) #--- Include the keymap in the kernel if defined. Path to the # keymap file relative to /usr/share/kbd/keymaps/ # (e.g., i386/qwerty/us.map.gz) or "none" # Not used in LFS KEYMAP=none #=== Variables needed by iterative comparison analysis === #--- Should some iterative comparison analysis by made? 0(no)/1(yes) COMPARE=0 #--- The number of final stage builds to create and compare, min. 2, max. 5 ITERATIONS=3 #--- Run ICA testing 0(no)/1(yes) RUN_ICA=0 #--- Run farce testing 0(no)/1(yes) RUN_FARCE=0 #==== INTERNAL VARIABLES ==== # Don't edit it unless you know what you are doing #--- Working directories SCRIPT_ROOT=jhalfs JHALFSDIR=$BUILDDIR/$SCRIPT_ROOT LOGDIR=$JHALFSDIR/logs TESTLOGDIR=$JHALFSDIR/test-logs #--- File listing package contents (from where package sources dir is extracted) PKG_LST=unpacked #--- ICA report log directory ICALOGDIR=$LOGDIR/ICA #--- farce report log directory FARCELOGDIR=$LOGDIR/farce |
02.03
修改optimize/opt_config.d/O3pipe_march,输入命令:
vi optimize/opt_config.d/O3pipe_march
下面是optimize/opt_config.d/O3pipe_march文件的全部内容:
引用:
##### # # $Id: O3pipe_march 2677 2006-05-11 20:21:14Z manuel $ # ##### # # MODE O3pipe_march configuration # # Usage: - Apply optimization string to each variable # - "unset" will cause the variable to be not set # instead of just set to null. # # Use this as an example for modeA_modeB combined modes # ##### # Inherit optimizations from O3pipe source optimize/opt_config.d/O3pipe CFLAGS_O3pipe_march=$CFLAGS_O3pipe" -march=pentium4" CXXFLAGS_O3pipe_march=$CFLAGS_O3pipe" -march=pentium4" LDFLAGS_O3pipe_march=$LDFLAGS_O3pipe OTHER_CFLAGS_O3pipe_march=$CFLAGS_O3pipe" -march=pentium4" OTHER_CXXFLAGS_O3pipe_march=$CXXFLAGS_O3pipe" -march=pentium4" OTHER_LDFLAGS_O3pipe_march=$LDFLAGS_O3pipe |
说明:青铜镜的CPU是AMD Althon XP 2000+,俺在这里将-march=pentium4全部改为-march=athlon-xp。
02.04
设定环境变量,代码:
export SRC_ARCHIVE=/lfs-sources
配置至此,差不多可以运行jhalfs啦!输入命令export看看一下设置。
02.05
好戏来了,执行以下命令:
time ./lfs -G -M
其间系统会有相应的提示,它会问你,你对刚刚的设置是不是很爽啊?爽的鸟语是不是happy?接下来将是考验你耐心的时刻!如果你的机器性能强劲、速度飞快,估计用不了多长时间,你的LFS半成品就可新鲜出炉了。第三章 收 工
当你看到屏幕上有这些鸟语时,也就是你的jhalfs打完收工了:
……
-set-up the boot loader, except if building CLFS with METHOO=boot, You can set-up the host bootloader or the new boot-loader installed on the new system.
If the last, you must to mount the virtual file system, re-enter the chroot and be sure that /dev is populated with the required devices before configure the boot-loader. When ready, exit from the chroot and umount the file systems.
If you are an experienced LFS user, several of those steps can be skipped or done in a different way. But then, that is something that you already know and there is no need to discuss it here.
……
Have a nice day:-)
done
Goodbye and thank you for choosing <jhalfs>
TIME
real 192m39.637s
user 153m2.200s
sys 28m39.990s
(机器配置:Athlon XP 2000+ DDR400 256M*2双通道 SWAP:403.04M)
刚刚青铜镜说了,至此,你的LFS半成品就可新鲜出炉了。我们还得进行最后的收尾工作!
03.01
设定系统配置文件
03.01.01
挂载并填充 /dev 目录
引用:
mount --bind /dev $LFS/dev |
03.01.02
挂载虚拟内核文件系统
引用:
mount -vt devpts devpts $LFS/dev/pts mount -vt tmpfs shm $LFS/dev/shm mount -vt proc proc $LFS/proc mount -vt sysfs sysfs $LFS/sys |
03.01.03
进入chroot环境
引用:
chroot "$LFS" /usr/bin/env -i \ HOME=/root TERM="$TERM" PS1='\u:\w\$ ' \ PATH=/bin:/usr/bin:/sbin:/usr/sbin \ /bin/bash --login |
03.01.04
设定root password
引用:
03.01.05
编辑/etc/sysconfig/clock
引用:
# Begin /etc/sysconfig/clock UTC=1 (注:青铜镜一般将这里改为0) # End /etc/sysconfig/clock |
03.01.06
运行下面的命令创建 /etc/sysconfig/network 文件并设置主机名:
引用:
echo "HOSTNAME=<lfs>" > /etc/sysconfig/network |
<lfs> 请用您的计算机名替换 [lfs] ,哈哈,青铜镜建议大伙用自己名字的拼音,这样很有成就感,可以大大满足了自己的虚荣心!不要在这里输入全限定域名(Fully Qualified Domain Name),FQDN 的信息稍后将放在 /etc/hosts 文件里。
03.01.07
编辑 /etc/hosts 文件:
引用:
# Begin /etc/hosts (network card version) 127.0.0.1 localhost <192.168.1.1><HOSTNAME.example.org> [alias1] [alias2 ...] # End /etc/hosts (network card version) |
把 [192.168.1.1] 和 [<HOSTNAME>.example.org] 更改为特定用户或特别要求所需要的值(如果这台机器要连入一个已存在的网络,并且网络/系统管理员已经给您分配了一个 IP 地址)。 如果您不打算配置网卡,可以采用下面的方式:
引用:
# Begin /etc/hosts (no network card version) 127.0.0.1 <HOSTNAME.example.org> <HOSTNAME> localhost # End /etc/hosts (no network card version) |
03.01.08
编辑/etc/sysconfig/network-devices/ifconfig.eth0/ipv4文件:
引用:
ONBOOT=yes SERVICE=ipv4-static IP=192.168.1.1 GATEWAY=192.168.1.2 PREFIX=24 BROADCAST=192.168.1.255 |
03.01.09
编辑/etc/resolv.conf文件:
引用:
# Begin /etc/resolv.conf domain {<域名>} nameserver <主域名服务器IP地址> nameserver <副域名服务器IP地址> # End /etc/resolv.conf |
03.01.10
编辑/etc/fstab文件。如果你在前面已经做好这个文件,并配置到jhalfs里面,那么这里就可以省略了。
引用:
# Begin /etc/fstab # file system mount-point type options dump fsck # order /dev/hda1 / ext3 defaults 1 1 /dev/hda2 swap swap pri=1 0 0 proc /proc proc defaults 0 0 sysfs /sys sysfs defaults 0 0 devpts /dev/pts devpts gid=4,mode=620 0 0 shm /dev/shm tmpfs defaults 0 0 # End /etc/fstab |
(请注意硬盘设备号!一定要按照自己的分区设置,不要照抄青铜镜的!要不你的系统会起不来了!)
03.02
安装内核和grub
03.02.01
安裝kernel(如果你已备好.config文件并写入jhalfs的设定路径,则内核早安装好了!)
引用:
cd /sources tar -jxvf linux-2.6.16.27.tar.bz2 cd linux-2.6.16.27.tar.bz2 patch -Np1 -i ../linux-2.6.16.27-utf8_input-1.patch make mrproper make menuconfig make make modules_install cp -v arch/i386/boot/bzImage /boot/lfskernel-2.6.16.27 cp -v System.map /boot/System.map-2.6.16.27 cp -v .config /boot/config-2.6.16.27 install -d /usr/share/doc/linux-2.6.16.27 && cp -r Documentation/* /usr/share/doc/linux-2.6.16.27 cd .. rm -rf linux-2.6.16.27.tar.bz2 |
03.02.02
安裝grub
运行 grub shell:
引用:
grub root (hd0,0) (注意分区设备号!) setup (hd0) quit |
创建一个 "显示菜单"文件定义 GRUB 的启动菜单:
引用:
cat > /boot/grub/menu.lst << "EOF" # Begin /boot/grub/menu.lst # By default boot the first menu entry. default 0 # Allow 30 seconds before booting the default. timeout 30 # Use prettier colors. color green/black light-green/black # The first entry is for LFS. title LFS 6.2 root (hd0,0) (注意硬盘分区设备号!) kernel /boot/lfskernel-2.6.16.27 root=/dev/hda1 (注意你自己的硬盘分区设备号!) EOF |
FHS 规定 GRUB 的 menu.lst 文件必须链接到 /etc/grub/menu.lst。为了符合这个规定,可以用下面的命令:
引用:
mkdir -v /etc/grub && ln -sv /boot/grub/menu.lst /etc/grub |
03.03
完成,重启系统!
首先,退出 chroot 环境:
引用:
卸载虚拟文件系统:
引用:
umount -v $LFS/dev/pts umount -v $LFS/dev/shm umount -v $LFS/dev umount -v $LFS/proc umount -v $LFS/sys |
卸载 LFS 自己的文件系统:
引用:
重启系统:
引用:
至此,我们的LFS算是完美收工了。省心,省事,少麻烦……特点是:方便快捷。好了,好话我就不多说了,下面请出我们伟大的、光荣的、正确的唐师父致闭幕 词!唐师父激动了一阵子,忘词了,说:“悟空,看看……”怎么样?够简单、快速、有效吧?如果你耐心看到这里,你曾经受到LFS长时间编译的折腾,一定会 对上面的介绍方法心动了,心动不如行动,还不赶紧回去试试!有什么动静回来跟贴……
什么?你还在手工输入命令?那你一定是飞豹大侠的铁杆粉丝!你看上面4楼的那位大哥,飞豹大侠一定是到过你的心里,并在你的心里面留下一滴眼泪吧?突然想 起齐天大圣一个跟斗云翻到五指山后,想证明自己曾经到过五指山,于是便题词:齐天大圣,至此一游。还顺便撒了一泡尿……呵呵,孙大圣这个习惯不好啊!
号外:你想知道飞豹大侠的书叫什么名字吗?
据《江湖小报》非著名记者青铜镜和《八卦周刊》资深记者金步国共同掌握的可靠消息,可以给大伙一个小小的提示:倪萍出了一本书叫做《日子》,白云大妈也出 了一本书叫做《月子》……下面,大家应该知道我们飞豹大侠的书名了吧?就是《星子》!啥?星子?白天见星星,跌倒……这不晕了吗?呵呵……
下 集 轻松搞定BLFS
第一次LFS收工后正确无误启动时,着实让青铜镜激动了老一阵子,太有成就感了!连盖着被子都想偷笑,太不容易了。后来,听说飞豹大侠编译LFS的次数竟 然达到了108次!而且每一次几乎都是手工完成的。顿时,俺的成就感一下了消失得无影无踪,好象白天见星星,那些星星竟然在偶面前飘来飘去……
引用:
下面是《江湖小报》非著名记者青铜镜独家专访飞豹大侠的报导: 青铜镜:飞豹大侠您好!我是《江湖小报》的记者青铜镜,非常感谢您老人家能在百忙之中抽出时间接受我们的专访。 飞豹大侠:你好!(我们俩握手,入座。)只要不涉及个人隐私问题,我一定如实回答你的提问。请大家多多支持我! 青铜镜:请问,飞豹大侠您做LFS的时间有多少年了? 飞豹大侠数数手指脚趾:我做LFS已好多年……(画外音乐轻轻响起:我不做大哥好多年……谁在唱反调?) 青铜镜:请问你做LFS的次数有没有100次?请问你做LFS是不是个人爱好?请问你做LFS的目的是什么?请问是不是为了全世界广大劳苦人民得解放?请 问你做了多少次BLFS?请问你做BLFS是不是编译KDE?请问你喜欢KDE还是GNOME?请问你有没有从做LFS中得到过好处?请问你每次做LFS 都是手工输入命令吗?请问你做LFS时使用的脚工是什么门派的?请问你是不是使用佛山无影脚?请问你能不能教我?…… (下面请出我们的嘉宾主持人唐师父!唐师父闪亮登场!由唐师父继续访问飞豹大侠。) 唐师父:请问你喜欢什么颜色?请问你喜欢什么水果?为何你起名叫飞豹呢?飞豹这个名字太平常了,建议你改名金钱豹!金钱豹,多好听的名字,多吉祥,多喜 庆。想想都让人感受到如沐春风呀!而且呢,这个金钱呀,实在是太好用了。王朔说过,金钱不是万能的,但没有钱是万万不能D。你要是改了名啊,那你就鸟生鱼 汤,玉树临风,千秋万载,一统江湖了@#$%&* 咋不见了飞豹大侠呢?一看地下,飞豹大侠不省人事,崩溃了……哈哈哈! |
下面是广告时间:
引用:
小郭拖地,忽然闪到腰,扶腰呼痛。 祝无双:怎么啦?又闪到腰了? 郭芙蓉:老啦,看来不服老是不行喽。 祝无双:年纪大了,骨质疏松,身体提醒你,缺钙啦(展示)白驼山壮骨粉,北宋欧阳锋独家秘方,专为武林中人研制。 郭芙蓉:可我已经退出江湖啦! 祝无双:一样用得上,俗话说人在江湖飘,谁能不挨刀?白驼山壮骨粉,内用外服均有奇效。挨了刀,涂一包,还想再挨第二刀,闪了腰,吃一包,二百多岁不显老。 祝/郭:白驼山壮骨粉,青春的粉,友谊的粉白驼山壮骨粉,北宋欧阳锋独家秘制,看着很像面粉,吃着更像面粉! 白展堂:华山论剑指定营养品,本镇各大药铺医馆均有销售,购买时,请认准黑蛤蟆防伪标志。无双、芙蓉:呱呱~~ |
广告之后,欢迎回来!
其实,LFS只是一个基本系统而已,还不能跟我们平时安装、使用的LINUX发行版那样,只要装上就可以使用了。我们还得装上相应的工具软件,装上桌面管 理软件,才能够让LFS满足我们的日常工作、学习、娱乐等应用。下面,我们就在已经完美收工的LFS上继续BLFS,朝着KDE轻松出发!当然啦,青铜镜 的方法跟比较简单,容易做得到,只要照着下面的步骤慢慢做,就可以很快装上KDE了。说白了,青铜镜在这里放一个葫芦,大伙可以照着这个葫芦慢慢画。
引用:
此乃武林密笈,传男不传不女!小心记好了:
引用:
1、把下面所有列出来的软件包先都下载好。 2、按照编号顺序写好脚本文件。 3、将脚本文件和软件包分组放在文件夹里面。 4、利用LiveCD将所有下载好的软件包和脚本文件加载进入LFS系统。 5、退出LiveCD,重新进入LFS,转到存放软件包和脚本的目录里。 6、将所有脚本的属性设置为可执行,例如:chmod +x 01libpng-1.2.12。 7、按编号先后顺序执行脚本文件。 |
这样,机器就自动给你安装软件包了!要注意软件包的版本号!包的安装顺序是排好的。当然,俺还是喜欢这样做:
./01libpng-1.2.12 && ./02expat-2.0.0 && ./03freetype-2.1.10 && 厖
哈哈,这种方法,老少皆宜!童叟无欺!下面是需要下载的软件包和相关脚本文件。