+ -
当前位置:首页 → 问答吧 → 为爱本编译系统 ( CLFS && CBLFS ^ x86_64-Multilib ^ )

为爱本编译系统 ( CLFS && CBLFS ^ x86_64-Multilib ^ )

时间:2007-09-13

来源:互联网

为爱本编译系统 ( CLFS && CBLFS ^ x86_64-Multilib ^ )

-------------------------------------------------------------------------------
  9月3日买了台神舟.天运F525R,当天晚上就开始动手给本本做系统了。因为是酷睿2双核64位处理器,我是不会就装个32位的系统的。而纯64位系统似乎还有很多不方便之处,故选择 x86_64 。我做的这个系统是按照 CLFS-SVN-x86_64-Multilib 手册,还有 CBLFS 的方法进行的。反复尝试多次,终于有了个大致的结果,现与大家分享。

  本文内容大致分为以下几个部分:
  1、简介 lfslivecd 的使用方法,以及可从硬盘引导的lfslivecd需要注意的一些问题。
  2、按照CLFS-SVN-x86_64-Multilib手册完成基本系统。( 由于手册软件太新,所以有几个地方略作修改)
  3、参考CBLFS手册,有选择的安装软件。本文中会安装 KDE 桌面环境,因为KDE安装比较容易一些,也较通用。
  4、还没想好。

  主要的参考资料:
  CLFS 手册 :
   http://cross-lfs.org/view/
   http://cross-lfs.org/view/svn/x86_64/

  CBLFS 手册 :
   http://cblfs.cross-lfs.org
   http://cblfs.cross-lfs.org/index.php/Main_Page

  BLFS手册(SVN版)
  http://www.linuxfromscratch.org/blfs/view/svn


  LiveCD (正式版) http://www.linuxfromscratch.org/livecd/download.html
  LiveCD (测试版) http://ums.usu.ru/~patrakov/test/

  在线词典:
  http://dict.cn

  google语言工具:
  http://www.google.com 点击右边的语言工具

  文中需要使用到的软件以及下载地址:
    CLFS部分:

    CLFS部分需要使用到的软件,这里就不一一列出了。详情请看手册 http://cross-lfs.org/view/svn/x86_64/ ,从 “ All Packages ”
  开始看。手册是全英文的,若有看不懂的朋友还烦请试试 google 的语言工具。我是英语文盲,所以英语的问题我帮不上忙。
    这里提供一个软件包和补丁的下载地址,其实仍然是CLFS网站上的。关于这个软件,因为已发现手册中的 Sysklogd-1.5 按手册中的方法安装
  后会很郁闷。其症状是开机出现一个 klogd 错误,会让系统在七分钟之后才完全启动。新版手册中的 sysklogd-1.5 没有提供补丁解决这个问题,
  所以选择 sysklogd-1.4.1 这个略旧的版本。
    下载地址是CLFS-1.0.0中的。除了sysklogd-1.5 ,它是最新的。
    本文中所以的CLFS需要使用到的软件将被存放在 svn 目录,因为我们做的是CLFS-SVN-x86_64-Multilib,是svn版。
    Sysklogd (1.4.1) - 80 KB:
     Home page: http://www.infodrom.org/projects/sysklogd/
     Download: http://www.infodrom.org/projects/sys...d-1.4.1.tar.gz
     MD5 sum: d214aa40beabf7bdb0c9b3c64432c774

    Sysklogd Fixes Patch - 28 KB:
     Download: http://patches.cross-lfs.org/1.0.0/s...-fixes-1.patch
     MD5 sum: 508104f058d1aef26b3bc8059821935f



    CBLFS部分:
    本文中所有的CBLFS需要使用的软件统一存放在 CBLFS 目录。
    


  CLFS部分目的是为了构建一个基础系统,本文就按照手册上来做了。CLFS完成后,还暂时还不能满足日常工作、学习、娱乐的需要。所以还得继续安装我们需要的软件。


选择安装的软件以及依赖关系列表:
未加说明的,都是先编译一次32位再编译一次64位. 编译方法 以CBLFS手册为准,个别地方与手册不相同。并非所有的包都需要编译一次32位再编译一次64位,这要看需要灵活选择。

################################################################################################
# CLFS-SVN-x86_64-20070923-linux_headers-2.6.22.6-no-kernel
#
$ [ gcc-4.2.1 glibc-2.6.1 binutils-2.18 & sysklogd-1.4.1 ]
################################################################################################

*************************************************
/ Master
===================================
* linux-2.6.22.6 ( reiser4-for-2.6.22-2.patch.gz 可选 )
* pkg-config
* PCI Utilities 64bit
* cpio 64bit
& Linux_PAM 64bit(可选)
* openssl-0.9.8e 64bit
* openssh-4.6p1 64bit
* FUSE-2.7.0 64bit
* Glib-2.14.0
* sshfs-fuse-1.8 64bit
* eject
##################################


*************************************************
/ Console Tools
===================================
* lynx-2.8.6 64bit
* wget-1.10.2 64bit
* gpm-1.20.1
* python
* zhcon-2.5-to-2.6 32bit( 这个选择安装 32 位的, 64位补丁用过后敲五笔时会有退出。 )
. doxygen
* ALSA ( ALSA Library , ALSA Plugins , ALSA Utilities , ALSA Tools , ALSA OSS )
& mpg123
& mplayer ( No-Gui ) 32bit ( 可选 )
& bridge-utils 64bit(可选)
~ unzip 64bit( 建议安装 )
~ unrar ( rar for linux )
###################################



*************************************************
/ X (X Window System)
===================================
/_/ XORG-7.2
-----------------------------------
* Xorg7.2-Intro
* Xorg7.2 / Protocol_Headers ( Required : pkg-config )
* Xorg7.2 / Utilities ( Required : pkg-config , Protocol Headers )
* FreeType-2.1.10
* expact
* FontConfig-2.4.2 ( Required : FreeType , expat )
* XCB --|
    --* Xcb-proto ( Required : Xorg7 / Intro )
    --* libpthread-stubs ( Required : Xorg7/Intro )
      * LibXML2 ( Required : Python -- /usr/include/python2.5/pyconfig.h )
      * LibXSLT ( Required : LibXML2 )
      * libXau [ from Xorg7/Libraries ]
    --* Libxcb ( Required : xcb-proto , ibpthread-stubs , LibXSLT , libXau from Xorg7/Libraries )
      * Gperf
    --* xcb-utils ( Required : libxcb , Gperf )
* fontconfig-2.4.2 ( Required : FreeType , expat )
* libpng-1.2.18
* Xorg7 / Libraries ( Required : XCB , FreeType , FontConfig )
* Xorg7 / libdrm
* Xorg7 / MesaLib
* Xorg7 / xbitmaps ( Required : Xorg / Utilities )
* Xorg7 / Apps ( Required : Xorg7 / xbitmaps , libpng , MesaLib , FreeType )
  perl Module XML::Parser ( Required : Expat )
* Xorg7/Data ( Required : Xorg / Apps , XML::Parser )
* Xorg7 / Fonts ( Required : Xorg / Apps , Xorg / Data )
* Xorg7 / Xserver ( Required : Xorg7 / Fonts )
* Xorg7 / Drivers ( Required : Xorg7 / Xserver )
  -- xf86-input-void-X11R7.1-1.1.0.tar.bz2
  -- xf86-input-keyboard-X11R7.2-1.1.1.tar.bz2
  -- xf86-input-mouse-X11R7.2-1.1.2.tar.bz2
  -- xf86-video-vesa-X11R7.2-1.3.0.tar.bz2
  -- xf86-video-vga-X11R7.1-4.1.0.tar.bz2
&  -- xf86-video-i810 ( 此处按自己的显卡来选择 )
  -- xf86-video-chips-X11R7.1-1.1.1.tar.bz2
* Xorg7 / xterm ( Required : libXaw from Xorg / Libraries )
* Xorg7/rman
* Configure X

###################################


*************************************************
/ X Libraries
===================================
* libjpeg
* little cms
* libmng ( Required : libjpeg , little cms )
. NAS
* QT-3.3.8 ( Required : X Window System , libjpeg , libmng )
----------------------------
* Glib2
----------------------------
. atk
. libtiff
. cairo
. pango
* gtk2

###################################


*************************************************
------------------------------------
/ Media and Libraries
------------------------------------
* Audiofile-0.2.6
* esound-0.2.38
~ SDL-1.2.11
~ Libao-0.8.8
* libogg-1.1.3
* libvorbis-1.1.2 ( Required : libogg )
~ nasm-0.99.0.2
~ LibMPEG3-1.7 ( Required : NASM )
* libmad-0.15.1b
~ libquicktime-1.0.0
~ libFAME-0.9.1
~ FLAC-1.2.1
~ Liba52-0.7.4
~ XviD-1.1.3
# ogg123
~* Vorbis Tools-1.1.1 ( Required : libvorbis ) ( Recommended : ogg123 , Curl , libao )
~* lame-3.97
~ Id3lib
~ FAAD2 ( Required : Id3lib )
~ FAAC
~ Theora ( Required : libvorbis )
~ x264
~ ffmpeg-0.4.9-prel
# Avifile-0.7.45 ( 暂时不编译这个软件。它会依赖相同版本的GCC编译的QT3 ,而这个软件包使用 gcc-4.2.1 是无法编译通过的。 )
# libidn-0.6.14 ( Required : Gengetopt ) ( libdts-0.0.2 )
# gstreamer ( gstreamer , gst-plugins-base , gst-plugins-good , gst-plugins-ugly , gst-ffmpeg )
# KPart
-----------------------------------

###################################


*************************************************
/ Desktops/Window Managers
===================================
/ KDE-3.5.7
-----------------------------------
* KDE Pre-Installation Configuration
* aRts ( Required : KDE Pre-Installation Configuration , Qt3 , Glib2 )
* Pcre
* KdeLibs ( Required : aRts , Pcre ) , ( Recommended : libjpeg )
* KdeBase ( Required : KdeLibs )
----------------------------- startx ----------------------------

~ Video Driver

~ opera ( http://www.opera.com )
. Font wqy ( http://wqy.sf.net ; http://wenq.org/ ; http://wqy.sourceforge.net/cgi-bin/index.cgi ; http://wqy.sourceforge.net/cgi-bin/enindex.cgi )
. Kde-i18n ( Required Required : KdeLibs , Font )
-------- Relogin -------
* input method ( SCIM ) 64bit
-----------------------------------

###################################


-----------------------------------
. KdeGraphics
# Akode
# KdeMultimedia
& Mplayer ( GUI ) 32bit
-----------------------------------


*************************************************
. LibIDL
. Zip
* firefox ( Required : Gtk2 , libIDL , Zip )


#Dev86
#IASL
#Xalan-C++

# VirtualBox ( Required : Dev86 , IASL , LibXSLT , Xalan-C++ , Qt3 , libIDL , SDL , ALSA ) ( Optional : GCC-3.3 (Requred for command 'kmk' while compiling) )
-----------------------------------

作者: tfkdmwmqtr   发布时间: 2007-09-13

LiveCD的使用. (使用可引导的iso)

特别说明 :关于使用从硬盘引导 ISO 可能的一些故障,已经解决了。方法使用 ro 只读挂载。文中已经改正了,可以放心使用。

提醒:虽然已经可以完美的从硬盘上的 ISO 文件引导 ,但仍然应该至少备一张 lfslivecd 光盘。

复制可引导的ISO到新机器,并为新本的新硬盘添加引导信息.
简介主系统的使用.

新本,只有DOS系而且不能上网。所以,在买本本的时候我就带了一刻录好的光盘去试本。
这张光盘是使用 lfslivecd-x86-6.3-r2052.iso 这个刻录的。
把光盘放入到光驱,重启并设置从光驱启动。LiveCD 启动之后,听到“嘀”的一声提示音,屏幕上出现boot: 提示符。这时可以按F1键,会看到许多提示。根据提示,可以直接敲回车键启动,也可以输入以下内容:
linux vga=792 TZ=Asia/Shanghai UTC=0 LANG=zh_CN.UTF-8
如果想做 64 位系统,可以用64位内核,把前面的linux换成linux64 。 TZ= 后面的是时区,可以换成PRC 。UTC=0是使用本地时间。LANG=zh_CN.UTF-8 是设置字符集编码,这些可以按自己的需要来设置。

分区并设第一主分区为活动分区。我分了三个主分区,分别是:

代码:
root@CLFS:~# fdisk -l

Disk /dev/sda: 100.0 GB, 100030242816 bytes
255 heads, 63 sectors/track, 12161 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

 Device Boot Start End Blocks Id System
/dev/sda1 * 1 1000 8032468+ 83 Linux
/dev/sda2 1001 2500 12048750 83 Linux
/dev/sda3 2501 4500 16065000 83 Linux
/dev/sda4 4501 12161 61536982+ 5 Extended
/dev/sda5 4501 4756 2056288+ 82 Linux swap / Solaris
/dev/sda6 4757 12161 59480631 83 Linux
创建文件系统:
代码:
mke2fs -jv /dev/sda1
挂载并创建目录:
代码:
mkdir -v /media/sda1
mount -v /dev/sda1 /media/sda1
mkdir -pv /media/sda1/boot/grub
将光盘保存为ISO :
代码:
dd if=/dev/cdrom of=/media/sda1/boot/lfslivecd-x86-6.3-r2052.iso
拷贝主系统的GRUB到硬盘BOOT目录:
代码:
cp -a /usr/lib/grub/*/* /media/sda1/boot/grub/
拷贝 Kernel , initrd :
代码:
cp -v /dev/shm/.cdrom/boot/isolinux/linux{,64} \
 /media/sda1/boot/
cp -v /dev/shm/.cdrom/boot/isolinux/initramfs_data.cpio.gz \
 /media/sda1/boot/
编辑GRUB引导配置文件:
代码:
cat >> /media/sda1/boot/grub/menu.lst << "EOF"
# 64bit kernel
title LFSLIVECD-x86-6.3-r2052 ( 2.6.22.5-64bit iso:/dev/sda1 )
root (hd0,0)
kernel /boot/linux64 vga=792 TZ=Asia/Shanghai UTC=0 LANG=zh_CN.UTF-8 root=iso:/dev/sda1:/boot/lfslivecd-x86-6.3-r2052.iso ro
initrd /boot/initramfs_data.cpio.gz

# 32bit kernel
title LFSLIVECD-x86-6.3-r2052 ( 2.6.22.5-32bit iso:/dev/sda1 )
root (hd0,0)
kernel /boot/linux vga=792 TZ=Asia/Shanghai UTC=0 LANG=zh_CN.UTF-8 root=iso:/dev/sda1:/boot/lfslivecd-x86-6.3-r2052.iso ro
initrd /boot/initramfs_data.cpio.gz
EOF
添加引导信息:
grub

GRUB 命令模式下将引导写到MBR
root (hd0,0)
setup (hd0)

quit

重启并尝试从硬盘引导系统:
cd
umount /dev/sda1
reboot

改过BIOS设置之后,尝试从硬盘引导个ISO的LINUX系统。

当然,也可以使用 lfslivecd-x86_64-6.3-r2014.iso 。而事实上两个我都用了。需要注意的是在拷贝 linux 和 initramfs_data.cpio.gz 的时候,名称不应与已有的x86的相同且要注意 menu.lst 文件的内容,否则可能会出现不能正常引导的情况。

LiveCD 在图形下使用 vi 编译文件退出之后可能会出现乱码,这时 敲 reset 这几个字母就可以了。注意,大写锁定键不要打开了。

特别说明 :关于使用从硬盘引导 ISO 可能的一些故障,已经解决了。方法使用 ro 只读挂载。文中已经改正了,可以放心使用。

2007年九月16日补充:
目前的 lfslivecd 从硬盘启动 ISO 文件需要特别特别注意!一定要弄对,否则后果十分严重!
综合最近四次数据丢失(台式机三次,笔记本今日发生一次),我可以断定当已载入lfslivecd的 kernel 和 initrd 无法找到和挂载某硬盘分区上的 ISO 的时候,很有可能会发生悲剧!!当你发现不能正常启动的时候,当你按下 Ctrl + ALT + Del 的时候,可能此分区上的文件已经被删除掉一部分了。如果,你看到它无法正常启动,还在耐心的等待,可能将删除完此分区上的所有文件。
20070916今天当我将 /dev/sda1 分区上的 /boot 移到 /dev/sda3 分区上之后,接着就在 /dev/sda1 分区上做了一次CLFS 。当我想从硬盘启动 ISO 时,我从 GRUB 编译模式中改 root (hd0,0) 为 root (hd0,2) 。但是 那段 kernel 后面的 /dev/sda1 忘了改成 /dev/sda3 了。这样就启动失败了。我只好按 Ctrl + Alt + Del 重启。接着就在GRUB启动画面看到了 ERROR ,我断定 第一主分区 /dev/sda1 上在的 /boot/grub 目录可能已经不存在了。当我从光盘启动之后,发现此分区根目录下已经丢失了几个重要的系统目录。
另外,那个存放 ISO 的分区肯定是要先挂载的,它挂载到了什么地方呢? 我仔细找了下,发现就在 /dev/shm/.partition/ 目录下。你可以想想这有多危险!?

20070916下午14:32补充:
可喜的是已经有了阻止灾难发生的办法,那就是使用 ro 只读挂载。上文中的已经改正了。
我们只需要在启动时使用 ro 参数就可以只读挂载那个将要被挂载的分区。然后无论这个分区上是否有我们需要的 ISO 文件,都不会对此分区数据造成破坏。除非是故意的去破坏,比如删分区,格式化等操作.

本文中由于是做 x86_64 的64位系统,应该使用 64 位的内核。我将iso文件移到了第三主分区。再次重申,ISO隐患已经解决,方法是用 ro 只读挂载存放iso文件的分区。这是我的 /boot/grub/menu.lst 文件:
代码:
# 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 CLFS.
title CLFS SVN-20070921-x86_64-Multilib ( 2.6.22.6-64bit /dev/sda1 ext3 )
root (hd0,0)
kernel /boot/clfskernel-2.6.22.6 vga=792 root=/dev/sda1

# The first entry is for CLFS.
title CLFS SVN-20070902-x86_64-Multilib ( 2.6.22.6-64bit /dev/sda2 ext3 )
root (hd0,1)
kernel /boot/clfskernel-2.6.22.6 vga=792 root=/dev/sda2

# The first entry is for CLFS.LiveCD
title LFSLIVECD-x86-6.3-r2052 ( 2.6.22.5-64bit iso:/dev/sda1 )
root (hd0,2)
kernel /boot/linux64 vga=792 TZ=Asia/Shanghai UTC=0 LANG=zh_CN.UTF-8 root=iso:/dev/sda3:/boot/lfslivecd-x86-6.3-r2052.iso ro
initrd /boot/initramfs_data.cpio.gz

# The first entry is for CLFS.LiveCD
title LFSLIVECD-x86_64-6.3-r2014 ( 2.6.22.1-64bit iso:/dev/sda1 )
root (hd0,2)
kernel /boot/linux-x86_64 vga=792 TZ=Asia/Shanghai UTC=0 LANG=zh_CN.UTF-8 root=iso:/dev/sda3:/boot/lfslivecd-x86_64-6.3-r2014.iso ro
initrd /boot/initramfs_data-x86_64.cpio.gz

作者: tfkdmwmqtr   发布时间: 2007-09-13

构建基础系统
  CLFS-svn-x86_64-Multilib 手册中发现一处错误、一处笔误、另外还有一处因为软件问题引起的系统启动的 klogd 错误会延时七分钟出现登录提示。CLFS手册从9月3日2点钟左右,更新了一次。这次更新,是一次“大跃进” 。linux内核及头文件从原先的 2.6.20.1 换成了 2.6.22.5 ,如果我记得不错udev 从 105 直接换到了 115 。现在是20070925了,从9月3日到9月25日,手册中的几处错误一直没有改正。

这几处错误是:


[错误一]
手册第八章," 8.2. E2fsprogs-1.40.2 " ,这里有一处错误。手册第十章 “ 10.67. Udev-115 64 Bit” 有一处笔误。
会导致目标系统启动不正常。现在已经有了解决的方法:
做CLFS-svn-x86_64 第8章时mount出错的解决方法 ( 感谢 echo 提供 )
http://linuxsir.org/bbs/showthread.php?t=312181

手册中有错的地方是这里:
http://cross-lfs.org/view/svn/x86_64...e2fsprogs.html
在编译 E2fsprogs-1.40.2 的时候,改成这样做:
这是 echo 提出来的,我就直接复制过来了。新版手册中的确有两处错误。
代码:
cp -v configure{,.orig}
sed -e "/libdir=.*\/lib/s@/lib@/lib64@g" configure.orig > configure
mkdir -v build
cd build
CC="${CC} ${BUILD64}" ../configure --prefix=/tools \
 --enable-elf-shlibs --disable-evms --with-cc="${CC} ${BUILD64}" \
 --with-linker=${LD} --host=${CLFS_TARGET}
make libs
make install-libs
做CLFS的时候,一定要注意把手册下载到硬盘。
我是这样做的:
mkdir CLFS-BOOK-SVN-HTML
wget -rcnp http://cross-lfs.org/view/svn/

做完CLFS之后,应该把手册的目录拷贝到目标系统中,然后再将系统打包备份。


[错误二]
http://cross-lfs.org/view/svn/x86_64/final-system/sysklogd.html
系统做好后,启动故障,klogd 错误,等待七分钟才出现登录提示。
解决办法 :
将sysklogd-1.5换成 1.4.1 的。


[错误三]
udev-115 64bit 的问题已经解决了。more README 之后,得到了我想要的答案。
( 20070915 下午2点57分)
手册中这样写的,这是一处笔误:
代码:
make CC="gcc ${BUILD64}" LD="gcc ${BUILD64}" \
 EXTRAS="extras/ata_id extras/cdrom_id extras/collect
 extras/edd_id extras/firmware extras/floppy extras/path_id extras/rule_generator
 extras/scsi_id extras/usb_id extras/volume_id" udevdir=/dev
详见
http://cross-lfs.org/view/svn/x86_64...dev-64bit.html

我是这样做的:
代码:
make CC="gcc ${BUILD64}" LD="gcc ${BUILD64}" \
 EXTRAS="$(echo extras/*)" udevdir=/dev
代码:
make DESTDIR=/ EXTRAS="$(echo extras/*)" install
余下部分的同手册。
手册中的做法是忘了加 \
换行。所以出错。把手册上每行换行处都加上 \
就可以了。

这个 Udev-115 还有一些问题。我的解决方是从 lfslivecd-x86_64-6.3-r2014.iso 这个系统中拷贝 文件。

代码:
 cp -a /lib64/udev/devices ${CLFS}/lib64/udev/
chmod +x /lib64/udev/rule_generator.functions
/lib/udev/devices 不用拷贝了。

新版手册中没有创建 /etc/mtab 文件, 自己建一个 touch /etc/mtab

作者: tfkdmwmqtr   发布时间: 2007-09-13

  CLFS完成之后,还只是一个基础系统,很多事情都做不了.当然,也还不能满足我的需要.所以还需要继续安装软件.我选择先安 装一些比较常见比较有用的软件.

  0101-PCI_Utilities-64bit
代码:
cd /sources
tar xf /CBLFS/pciutils-2.2.6.tar.bz2
cd pciutils-2.2.6
sed -i 's/null ;/null 2>\&1 ;/' update-pciids.sh &&
make PREFIX=/usr LIBDIR=/usr/lib64 CC="gcc ${BUILD64}" ZLIB=no
make PREFIX=/usr LIBDIR=/usr/lib64 install
make PREFIX=/usr LIBDIR=/usr/lib64 install-lib
cd ..
rm -rf pciutils-2.2.6
  0102-cpio-64bit
代码:
cd /sources
tar xf /CBLFS/cpio-2.9.tar.bz2
CC="gcc ${BUILD64}" ./configure CPIO_MT_PROG=mt --prefix=/usr --libdir=/usr/lib64 \
 --bindir=/bin --libexecdir=/tmp \
 --with-rmt=/usr/sbin/rmt &&
make
make install
cd ..
rm -rf cpio-2.9
  0103-pkg-config-x86_64
代码:
cd /sources
tar xvf /CBLFS/pkg-config-0.22.tar.gz
cp -a pkg-config-0.22{,-64}
# 32bit
cd pkg-config-0.22
# Compile the package:
CC="gcc ${BUILD32}" ./configure --prefix=/usr --with-pc-path=/usr/share/pkgconfig &&
make
# Install the package
make install
mv -v /usr/bin/pkg-config{,-32}

# 64bit
cd ../pkg-config-0.22-64
# Compile the package:
CC="gcc ${BUILD64}" ./configure --prefix=/usr --with-pc-path=/usr/share/pkgconfig &&
make
# Install the package
make install
cd /sources
rm -rf pkg-config-0.22{,-64}

cat > /etc/profile << "EOF"
# Begin /etc/profile
# Based on the profile scripts in BLFS http://www.linuxfromscratch.org/blfs/view/svn/postlfs/profile.html

for script in /etc/profile.d/*.sh
do
 source $script
done
unset script

# End /etc/profile.d
EOF

install -d -m755 /etc/profile.d

cat > /etc/profile.d/10-pkg_config_path.sh << "EOF"
# Begin /etc/profile.d/10-pkg_config_path.sh

export PKG_CONFIG_PATH32="/usr/lib/pkgconfig"
export PKG_CONFIG_PATHN32="/usr/lib32/pkgconfig"
export PKG_CONFIG_PATH64="/usr/lib64/pkgconfig"

# End /etc/profile.d/10-pkg_config_path.sh
EOF

source /etc/profile
  注意: 上面的 source /etc/profile 这条命令一定要手工敲入。

  0104-openSSL-64bit
代码:
cd /sources
tar xf /CBLFS/openssl-0.9.8e.tar.gz
# 64bit
#cd ../openssl-0.9.8e-64
# This patch allows OpenSSL to be installed into a dir other then lib:
patch -Np1 -i /CBLFS/openssl-0.9.8e-allow_lib64-1.patch
# Apply patch to correct GCC-4.2.0 problems:
patch -Np1 -i /CBLFS/openssl-0.9.8e-gcc42_fix-1.patch
# Configure the Package (Use the appropriate command):
./Configure linux-x86_64 --openssldir=/etc/ssl --prefix=/usr shared
# Compile the package:
USE_ARCH=64 make CC="gcc ${BUILD64}" PERL=/usr/bin/perl LIBDIR=lib64
# Install the package:
USE_ARCH=64 make PERL=/usr/bin/perl MANDIR=/usr/share/man LIBDIR=lib64 install
#
cd ..
rm -rf openssl-0.9.8e{,-64}
  0105-OpenSSH-64bit
代码:
# OpenSSH User/Group & PrivSep Dir
groupadd -g 48 sshd &&
useradd -c 'sshd PrivSep' -d /var/lib/sshd -g sshd -s /bin/false -u 48 sshd &&
install -v -m700 -d /var/lib/sshd &&
chown -v root:sys /var/lib/sshd

cd /sources
tar xf /CBLFS/openssh-4.6p1.tar.gz
cd openssh-4.6p1
CC="gcc ${BUILD64}" ./configure --prefix=/usr --sysconfdir=/etc/ssh \
 --libexecdir=/usr/sbin --with-md5-passwords \
 --with-privsep-path=/var/lib/sshd &&
make
make install &&
install -v -m755 -d /usr/share/doc/openssh-4.6p1 &&
install -v -m644 INSTALL LICENCE OVERVIEW README* WARNING.RNG \
/usr/share/doc/openssh-4.6p1

cd ..
rm -rf openssh-4.6p1{,-64}

# Configuring
# BootScript
#Install the init script included in the blfs-bootscripts package.
tar xf /CBLFS/blfs-bootscripts-20060910.tar.bz2
cd blfs-bootscripts-20060910

make install-sshd
  0106-glib-2
代码:
#Required
# * pkg-config

cd /sources
# ftp://ftp.gtk.org/pub/glib/2.12/glib-2.14.0.tar.bz2
tar xvf /CBLFS/glib-2.14.0.tar.bz2
cp -a glib-2.14.0{,-64}
# 32bit
cd glib-2.14.0
# Compile the package:
CC="gcc ${BUILD32}" ./configure --prefix=/usr --host=${CLFS_TARGET32} &&
make
# Install the package
make install
# find /usr/bin/{glib-genmarshal,glib-gettextize,glib-mkenums,gobject-query} -exec mv -v {} {}-32 \;

# 64bit
cd ../glib-2.14.0-64
# Compile the package:
CC="gcc ${BUILD64}" ./configure --prefix=/usr --libdir=/usr/lib64 &&
make
# Install the package
make install
cd ..
rm -rf glib-2.14.0{,-64}
  0107-FUSE-64bit
  这个包被SSHFS依赖。编译FUSE需要Linux kernel source , 如果在编译内核后删除了源码目录,需要重建源码目录,没有必要再编译一次内核。
代码:
# Required : Linux kernel source
cd /sources
tar xf /CBLFS/fuse-2.7.0.tar.gz
cd fuse-2.7.0
CC="gcc ${BUILD64}" ./configure --prefix=/usr \
 --libdir=/usr/lib64 --with-kernel=/lib64/modules/$(uname -r)/source &&
make
make install
cd ..
rm -rf fuse-2.7.0

  0108-SSHFS-64bit
  这个软件很方便。我的台式机和笔记本拷贝文件就靠它了。
代码:
cd /sources
tar xf /CBLFS/sshfs-fuse-1.8.tar.gz
cd sshfs-fuse-1.8
PKG_CONFIG_PATH="$PKG_CONFIG_PATH64" CC="gcc ${BUILD64}" \
 ./configure --prefix=/usr
make
make install

cd ..
rm -rf sshfs-fuse-1.8
  0109-eject-64bit
  这个软件用来控制光驱托盘的进/出。
代码:
cd /sources
tar xf /CBLFS/eject-2.1.5.tar.gz
# 64bit
cd eject
CC="gcc ${BUILD64}" ./configure --prefix=/usr &&
make
make install
cd ..
rm -rf eject
  0110-wget-64bit
代码:
cd /sources
tar xvf /CBLFS/wget-1.10.2.tar.gz
cd wget-1.10.2
CC="gcc ${BUILD64}" ./configure --prefix=/usr --sysconfdir=/etc --libdir=/usr/lib64 &&
make
make install
cd ..
rm -rf wget-1.10.2{,-64}
  0111-GPM
代码:
cd /sources
tar xvf /CBLFS/gpm-1.20.1.tar.bz2
cp -a gpm-1.20.1{,-64}
# 32bit
cd gpm-1.20.1
patch -Np1 -i /CBLFS/gpm-1.20.1-segfault-1.patch &&
patch -Np1 -i /CBLFS/gpm-1.20.1-silent-1.patch &&
CC="gcc ${BUILD32}" ./configure --prefix=/usr --sysconfdir=/etc &&
LDFLAGS="-lm" make
make install &&
ldconfig
mv -v /usr/sbin/gpm{,-32}
#
# 64bit
cd ../gpm-1.20.1-64
patch -Np1 -i /CBLFS/gpm-1.20.1-segfault-1.patch
patch -Np1 -i /CBLFS/gpm-1.20.1-silent-1.patch
CC="gcc ${BUILD64}" ./configure --prefix=/usr --sysconfdir=/etc \
 --libdir=/usr/lib64 &&
LDFLAGS="-lm" make
make install &&
cp -v conf/gpm-root.conf /etc &&
ldconfig
cd ..
rm -rf gpm-1.20.1{,-64}

# BootScript
#tar xvf /CBLFS/blfs-bootscripts-20060910.tar.bz2
cd blfs-bootscripts-20060910
make install-gpm

# configuration information
cat > /etc/sysconfig/mouse << "EOF"
# Begin /etc/sysconfig/mouse

MDEVICE="/dev/psaux"
PROTOCOL="imps2"
GPMOPTS=""

# End /etc/sysconfig/mouse
EOF

/etc/rc.d/init.d/gpm start
  0112-zhcon-0.2.5-to-0.2.6-32bit
  Linux中的ucdos,不用启图形就可以使用中文了。因为64位还有些问题,所以这里暂时安装32位的用用。zhcon 默认是 gb2312 编码,打过0.2.6补丁的支持utf8,可以在字符环境下敲入 zhcon --utf8 启动 。
代码:
cd /sources
tar xvf /CBLFS/zhcon-0.2.5.tar.gz
cd zhcon-0.2.5
zcat /CBLFS/zhcon-0.2.5-to-0.2.6.diff.gz | patch -p1
# 32bit
CC="gcc ${BUILD32}" CXX="g++ ${BUILD32}" \
 ./configure --prefix=/usr --sysconfdir=/etc/zhcon
make
make install
mv -v /usr/bin/zhcon{,-32}
  0113-unzip
代码:
cd /sources
tar xf /CBLFS/unzip552.tar.gz
cd unzip-5.52
make -f unix/Makefile LOCAL_UNZIP=-D_FILE_OFFSET_BITS=64 \
 CC="gcc ${BUILD64}" LD='$(CC)' CF="-O -Wall -I. -DUSE_UNSHRINK" \
 unzips
make -f unix/Makefile prefix=/usr install
cd ..
rm -rf unzip-5.52
  0114-rar-for-linux
代码:
#Non-Multilib
tar xf /CBLFS/rarlinux-3.7.1.tar.gz
cd rar
sed -i -e "s/\/local//" Makefile
make install
cd ..
rm -rf rar
  0115-python
代码:
cd /sources
tar xvf /CBLFS/Python-2.5.tar.bz2
cp -a Python-2.5{,-64}
# 32Bit
cd Python-2.5
# Compile the package:
patch -Np1 -i /CBLFS/Python-2.5-gdbm-1.patch &&
CC="gcc ${BUILD32}" CXX="g++ ${BUILD32}" ./configure --prefix=/usr \
 --enable-shared &&
make EXTRA_CFLAGS="-fwrapv"
# Install the package
make install &&
mv -v /usr/bin/python{,-32} &&
mv -v /usr/bin/python2.5{,-32} &&
mv -v /usr/include/python2.5/pyconfig{,-32}.h

# 64Bit
cd ../Python-2.5-64
# Change the libdir that Python is going to use to lib64:
patch -Np1 -i /CBLFS/Python-2.5-multilib-1.patch
sed -i -e "s:@@MULTILIB_DIR@@:lib64:g" \
 Lib/distutils/command/install.py \
 Lib/distutils/sysconfig.py \
 Lib/site.py \
 Makefile.pre.in \
 Modules/Setup.dist \
 Modules/getpath.c \
 setup.py
# Compile the package:
patch -Np1 -i /CBLFS/Python-2.5-gdbm-1.patch &&
CC="gcc ${BUILD64}" CXX="g++ ${BUILD64}" ./configure --prefix=/usr \
 --libdir=/usr/lib64 --enable-shared &&
make EXTRA_CFLAGS="-fwrapv"
# Install the package
make install &&
mv -v /usr/bin/python{,-64} &&
mv -v /usr/bin/python2.5{,-64} &&
ln -sfv multiarch_wrapper /usr/bin/python &&
ln -sfv multiarch_wrapper /usr/bin/python2.5 &&
mv -v /usr/include/python2.5/pyconfig{,-64}.h
cd /sources
rm -rf Python-2.5{,-64}

# 这里选择通用的。详情请看CBLFS手册。
# Creating a Generic Stub Header
cat > /usr/include/python2.5/pyconfig.h << "EOF"
/* pyconfig.h - Stub Header */
#ifndef __STUB__PYCONFIG_H__
#define __STUB__PYCONFIG_H__

#if defined(__x86_64__) || \
 defined(__sparc64__) || \
 defined(__arch64__) || \
 defined(__powerpc64__) || \
 defined (__s390x__)
# include "pyconfig-64.h"
#else
# include "pyconfig-32.h"
#endif

#endif /* __STUB__PYCONFIG_H__ */
EOF
  0116-doxygen
代码:
cd /sources
tar xvf /CBLFS/doxygen-1.5.3.src.tar.gz
cp -a doxygen-1.5.3{,-64}
# 32Bit
cd doxygen-1.5.3
# Compile the package:
CC="gcc ${BUILD32}" CXX="g++ ${BUILD32}" ./configure --prefix /usr --docdir /usr/share/doc &&
make
# Install the package
make install
mv -v /usr/bin/doxygen{,-32}

# 64Bit
cd ../doxygen-1.5.3-64
# Compile the package:
CC="gcc ${BUILD64}" CXX="g++ ${BUILD64}" ./configure --prefix /usr --docdir /usr/share/doc &&
make
# Install the package
make install
#If you wish to generate and install the package documentation (note that man pages have already been installed), you must have Python, teTeX (for HTML docs) and Ghostscript (for PDF docs) installed, then issue the following command:
#这里不需要:
#make install_docs
cd /sources
rm -rf doxygen-1.5.3{,-64}
  0117-alsa-lib
  安装了这么多软件,还没有安装图形,心情很郁闷。现在把alsa装上,把mpg123安装上,然后拷贝几个mp3过来听听。
代码:
cd /sources
tar xvf /CBLFS/alsa-lib-1.0.14.tar.bz2
cp -a alsa-lib-1.0.14{,-64}
# 32Bit
cd alsa-lib-1.0.14
# Compile the package:
CC="gcc ${BUILD32}" ./configure &&
make
# Install the package
make install

# 64Bit
cd ../alsa-lib-1.0.14-64
# Compile the package:
CC="gcc ${BUILD64}" ./configure --libdir=/usr/lib64 &&
make
# Install the package
make install &&
install -v -m644 -D doc/asoundrc.txt \
 /usr/share/doc/alsa-lib-1.0.14/asoundrc.txt
cd ..
rm -rf alsa-lib-1.0.14{,-64}
  0118-alsa-plugins
代码:
cd /sources
tar xvf /CBLFS/alsa-plugins-1.0.14.tar.bz2
cp -a alsa-plugins-1.0.14{,-64}
# 32Bit
cd alsa-plugins-1.0.14
# Compile the package:
CC="gcc ${BUILD32}" PKG_CONFIG_PATH="${PKG_CONFIG_PATH32}" ./configure &&
make
# Install the package
make install

#cd /sources
#tar xvf /CBLFS/alsa-plugins-1.0.14.tar.bz2
# 64Bit
cd ../alsa-plugins-1.0.14-64
# Compile the package:
CC="gcc ${BUILD64}" PKG_CONFIG_PATH="${PKG_CONFIG_PATH64}" ./configure --libdir=/usr/lib64 &&
make
# Install the package
make install &&
install -v -m755 -d /usr/share/doc/alsa-plugins-1.0.14 &&
install -v -m644 doc/{README*,*.txt} \
 /usr/share/doc/alsa-plugins-1.0.14
cd /sources
rm -rf alsa-plugins-1.0.14{,-64}
  0119-alsa-utilities
代码:
cd /sources
tar xvf /CBLFS/alsa-utils-1.0.14.tar.bz2
cp -a alsa-utils-1.0.14{,-64}
# 32Bit
cd alsa-utils-1.0.14
# Compile the package:
CC="gcc ${BUILD32}" ./configure &&
make
# Install the package
make install

# 64Bit
# Compile the package:
cd ../alsa-utils-1.0.14-64
CC="gcc ${BUILD64}" ./configure &&
make
# Install the package
make install
cd /sources
rm -rf alsa-utils-1.0.14{,-64}

# Configuration Information
#
# Use a bootscript to store the values at shutdown.
cd /sources/blfs-bootscripts-20060910/
make install-alsa

# The first time the alsactl program is run from the udev rule below, it will complain that there is no state in /etc/asound.state. You can prevent this by running the following commands as the root user:


#touch /etc/asound.state &&
#alsactl store


# As the root user, install a new Udev rules file to create the audio device nodes and run the restore script:
cat > /etc/udev/rules.d/15-alsa.rules << "EOF"
# Give the audio group ownership of sound devices
SUBSYSTEM=="sound", GROUP="audio"
SUBSYSTEM=="snd", GROUP="audio"

# ALSA Devices
# When a sound device is detected, restore the volume settings
KERNEL=="controlC[0-9]*", NAME="snd/%k", ACTION=="add", RUN+="/usr/sbin/alsactl restore %n"
KERNEL=="hw[CD0-9]*", NAME="snd/%k"
KERNEL=="pcm[CD0-9cp]*", NAME="snd/%k"
KERNEL=="midiC[D0-9]*", NAME="snd/%k"
KERNEL=="timer", NAME="snd/%k"
KERNEL=="seq", NAME="snd/%k"
EOF
chmod 644 /etc/udev/rules.d/15-alsa.rules

udevtrigger /etc/udev/rules.d/15-alsa.rules
  现在可以尝试运行 alsamixer 命令,调节音量大小了。m键是打开/关闭声音,上下光标键是调节大小,左右方向键移动,Esc或Ctrl加C键可以退出。

  0120-alsa-tools
代码:
cd /sources
tar xvf /CBLFS/alsa-tools-1.0.14.tar.bz2
cp -a alsa-tools-1.0.14{,-64}
# 32Bit
cd alsa-tools-1.0.14
cd ac3dec
# Apply the following patch in the top-level directory of alsa-tools before building ac3dec:
#patch -Np1 -i /CBLFS/alsa-tools-1.0.14-ac3dec_config_update-1.patch
# Compile each package with:
CC="gcc ${BUILD32}" CXX="g++ ${BUILD32}" USE_ARCH=32 PKG_CONFIG_PATH="${PKG_CONFIG_PATH32}" \
./configure --prefix=/usr &&
make
# Install each package with:
make install

# 64Bit
cd ../../alsa-tools-1.0.14-64
cd ac3dec
# Apply the following patch in the top-level directory of alsa-tools before building ac3dec:
#patch -Np1 -i /CBLFS/alsa-tools-1.0.14-ac3dec_config_update-1.patch
# Before building qlo10k1 apply the following sed so it looks in the correct dir for libraries:
sed -i "s@QTDIR/lib@&64@g" configure
# Compile each package with:
CC="gcc ${BUILD64}" CXX="g++ ${BUILD64}" USE_ARCH=64 PKG_CONFIG_PATH="${PKG_CONFIG_PATH64}" \
./configure --prefix=/usr --libdir=/usr/lib64 &&
make
# Install each package with:
make install
cd /sources
rm -rf alsa-tools-1.0.14{,-64}
  0121-alsa-oss
代码:
cd /sources
tar xvf /CBLFS/alsa-oss-1.0.14.tar.bz2
cp -a alsa-oss-1.0.14{,-64}
# 32Bit
cd alsa-oss-1.0.14
# Compile the package:
CC="gcc ${BUILD32}" ./configure &&
make
# Install the package
make install

# 64Bit
cd ../alsa-oss-1.0.14-64
# Compile the package:
CC="gcc ${BUILD64}" ./configure --libdir=/usr/lib64 &&
make
# Install the package
make install
cd /sources
rm -rf alsa-oss-1.0.14{,-64}
  0122-mpg123
代码:
#Required
# * ALSA OSS or OSS kernel Support
cd /sources
tar xvf /CBLFS/mpg123-0.67.tar.bz2
cp -a mpg123-0.67{,-64}
# 32Bit
cd mpg123-0.67
# Configure and compile the package:
CC="gcc ${BUILD32}" ./configure --prefix=/usr &&
make
make install
mv -v /usr/bin/mpg123{,-32}

# 64bit
cd ../mpg123-0.67-64
CC="gcc ${BUILD64}" ./configure --prefix=/usr &&
make
make install
cd ..
rm -rf mpg123-0.67{,-64}
  如果硬盘上有mp3音乐,现在就可以用 mpg123 xxx.mp3 来播放mp3音乐了,可以使用通配符“ * ”号。
  前面安装过openSSH 和 sshfs 了,所以这安装过openSSH之后,我就启用 ssh 服务从台式机登录到笔记本进行编译安装软件了。sshfs这个软件挺好用的,两台机器只需要用交叉线连接,配一下IP地址就可以了传送文件了。

作者: tfkdmwmqtr   发布时间: 2007-09-13

Xorg-7.2 的安装过程

---------------------------------------------------------------------------------
  0200-Xorg7.2_Download
  这里先下载 Xorg7.2的源码包。到 /CBLFS/xorg-7.2/ 和 /CBLFS/ 目录。其中,/CBLFS/xorg-7.2/ 目录将会 cp -a 拷贝到 /sources/ 目录下,方便使用半自动化脚本安装。
代码:
cd /CBLFS
# 此处注意看手册。
mkdir xorg-7.2 &&
cd xorg-7.2
install -dv {app,data,driver,font,lib,proto,util}
# DOWNLOAD :
# Xorg7/Protocol Headers

.............................
  0201-Intro
代码:
# Xorg7.2 Multilib ( x86_64 )

export XORG_PREFIX=/usr/X11R7

# XORG_CONFIG
export XORG_CONFIG32="--prefix=$XORG_PREFIX --sysconfdir=/etc --localstatedir=/var"
export XORG_CONFIGN32="--prefix=$XORG_PREFIX --libdir=$XORG_PREFIX/lib32 --sysconfdir=/etc --localstatedir=/var"
export XORG_CONFIG64="--prefix=$XORG_PREFIX --libdir=$XORG_PREFIX/lib64 --sysconfdir=/etc --localstatedir=/var"

# ld.so.conf
# If your XORG_PREFIX is anything other than /usr you need to add the following to /etc/ld.so.conf so your libraries can be found.
cat >> /etc/ld.so.conf << EOF
# Begin Xorg addition to /etc/ld.so.conf

${XORG_PREFIX}/lib
${XORG_PREFIX}/lib32
${XORG_PREFIX}/lib64

# End Xorg addition to /etc/ld.so.conf
EOF

# Bash Startup Files

# /etc/profile

cat > /etc/profile << "EOF"
# Begin /etc/profile
# Based on the profile scripts in BLFS http://www.linuxfromscratch.org/blfs/view/svn/postlfs/profile.html

for script in /etc/profile.d/*.sh
do
 source $script
done
unset script

# End /etc/profile.d
EOF

install -d -m755 /etc/profile.d

# 15-xorg.sh

cat > /etc/profile.d/15-xorg.sh << "EOF"
# Begin /etc/profile.d/15-xorg.sh

export XORG_PREFIX=/usr/X11R7

export PATH="${PATH}:${XORG_PREFIX}/bin"
export PKG_CONFIG_PATH32="${PKG_CONFIG_PATH32}${PKG_CONFIG_PATH32+:}${XORG_PREFIX}/lib/pkgconfig"
export PKG_CONFIG_PATHN32="${PKG_CONFIG_PATHN32}${PKG_CONFIG_PATHN32+:}${XORG_PREFIX}/lib32/pkgconfig"
export PKG_CONFIG_PATH64="${PKG_CONFIG_PATH64}${PKG_CONFIG_PATH64+:}${XORG_PREFIX}/lib64/pkgconfig"
export ACLOCAL="aclocal -I $XORG_PREFIX/share/aclocal"

# End /etc/profile.d/15-xorg.sh
EOF

# XORG_CONFIG
cat >> /etc/profile.d/15-xorg.sh << "EOF"
# XORG_CONFIG
export XORG_CONFIG32="--prefix=$XORG_PREFIX --sysconfdir=/etc --localstatedir=/var"
export XORG_CONFIGN32="--prefix=$XORG_PREFIX --libdir=$XORG_PREFIX/lib32 --sysconfdir=/etc --localstatedir=/var"
export XORG_CONFIG64="--prefix=$XORG_PREFIX --libdir=$XORG_PREFIX/lib64 --sysconfdir=/etc --localstatedir=/var"
EOF

source /etc/profile
ldconfig
  0201-pkg-config
  pkg-config 这个包,前面安过了。如果不想安装一些字符环境下的软件,前面有些软件可以不安装。

  0202-FreeType
代码:
# Newer versions of FreeType are incompatible with other packages. Please leave FreeType at 2.1.10 unless you've built a fairly complete system against a newer version without a problem. 
[color=red]#手册上推荐使用freetype-2.1.10,因为新的版本和以后要安装的软件是格格不入的。
cd /sources
tar xf /CBLFS/freetype-2.1.10.tar.bz2
cp -a freetype-2.1.10{,-64}
# 32bit
cd freetype-2.1.10
sed -i -r 's:.*(#.*BYTE.*) .*:\1:' include/freetype/config/ftoption.h
# Configure and compile the package:
CC="gcc ${BUILD32}" ./configure --prefix=/usr &&
make
# Install the package:
make install &&
mv -v /usr/bin/freetype-config{,-32}

# 64bit
cd ../freetype-2.1.10-64
tar xf /CBLFS/freetype-doc-2.1.10.tar.bz2 --strip-components=2 -C docs
sed -i -r 's:.*(#.*BYTE.*) .*:\1:' include/freetype/config/ftoption.h
# Configure and compile the package:
CC="gcc ${BUILD64}" ./configure --prefix=/usr --libdir=/usr/lib64 &&
make
# Install the package:
make install &&
mv -v /usr/bin/freetype-config{,-64} &&
ln -sf multiarch_wrapper /usr/bin/freetype-config &&
install -v -m755 -d /usr/share/doc/freetype-2.1.10 &&
cp -v -R docs/* /usr/share/doc/freetype-2.1.10
cd ..
rm -rf freetype-2.1.10{,-64}
  0203-expat
代码:
cd /sources
tar xvf /CBLFS/expat-2.0.1.tar.gz 
cp -a expat-2.0.1{,-64}
# 32bit
cd expat-2.0.1
# Configure and compile the package:
CC="gcc ${BUILD32}" ./configure --prefix=/usr &&
make
# Install the package:
make install

# 64bit
cd ../expat-2.0.1-64
# Configure and compile the package:
CC="gcc ${BUILD64}" ./configure --prefix=/usr --libdir=/usr/lib64 &&
make
# Install the package:
make install &&
install -v -m755 -d /usr/share/doc/expat-2.0.1 &&
install -v -m644 doc/*.{html,png,css} /usr/share/doc/expat-2.0.1
cd /sources
rm -rf expat-2.0.1{,-64}
  0204-Xcb-proto
代码:
# Required
# * Ensure the proper XORG_CONFIG* variables are set from Xorg7/Intro
cd /sources
tar xvf /CBLFS/xcb-proto-1.0.tar.bz2 
cp -a xcb-proto-1.0{,-64}
cd xcb-proto-1.0
# 32Bit
# Compile the package:
./configure $XORG_CONFIG32
# Install the package
make install

# 64bit
cd ../xcb-proto-1.0-64
# Compile the package:
./configure $XORG_CONFIG64
# Install the package
make install
cd /sources
rm -rf xcb-proto-1.0{,-64}
  0205-libpthread-stubs
代码:
cd /sources
tar xvf /CBLFS/libpthread-stubs-0.1.tar.bz2 
cp -a libpthread-stubs-0.1{,-64}
cd libpthread-stubs-0.1
./configure $XORG_CONFIG32
make install

# 64bit
cd ../libpthread-stubs-0.1-64
./configure $XORG_CONFIG64
make install
cd /sources
rm -rf libpthread-stubs-0.1{,-64}
  0206-LibXML2
代码:
cd /sources
tar xvf /CBLFS/libxml2-2.6.29.tar.gz 
cp -a libxml2-2.6.29{,-64}
# 32bit
cd libxml2-2.6.29
# Compile the package:
CC="gcc ${BUILD32}" USE_ARCH=32 ./configure --prefix=/usr &&
make
# Install the package
make install &&
mv -v /usr/bin/xml2-config{,-32}

# 64bit
cd ../libxml2-2.6.29-64
# Compile the package:
CC="gcc ${BUILD64}" USE_ARCH=64 ./configure --prefix=/usr \
 --libdir=/usr/lib64 &&
make
# Install the package
make install &&
mv -v /usr/bin/xml2-config{,-64} &&
ln -sfv multiarch_wrapper /usr/bin/xml2-config
cd /sources
rm -rf libxml2-2.6.29{,-64}
  0207-LibXSLT
代码:
#Required
# * LibXML2
cd /sources
tar xvf /CBLFS/libxslt-1.1.21.tar.gz
cp -a libxslt-1.1.21{,-64}
# 32bit
cd libxslt-1.1.21
# Compile the package:
CC="gcc ${BUILD32}" USE_ARCH=32 ./configure --prefix=/usr &&
make
# Install the package
make install &&
mv -v /usr/bin/xslt-config{,-32}

# 64bit
cd ../libxslt-1.1.21-64
# Compile the package:
CC="gcc ${BUILD64}" USE_ARCH=64 ./configure --prefix=/usr \
 --libdir=/usr/lib64 &&
make
# Install the package
make install &&
mv -v /usr/bin/xslt-config{,-64} &&
ln -sfv multiarch_wrapper /usr/bin/xslt-config
cd /sources
rm -rf libxslt-1.1.21{,-64}
  0208-XORG-7.2-Protocol_Headers
代码:
# Required : pkg-config

cd /sources/xorg-7.2
wget http://cblfs.cross-lfs.org/images/e/ea/Proto-7.2.wget &&
cd proto &&
wget -B http://xorg.freedesktop.org/releases/X11R7.2/src/proto/ -i ../Proto-7.2.wget

# Install each protocol:
for i in *.tar.bz2; do
 tar xvf $i;
done

# Install the protocol headers:
for dir in `find . -maxdepth 1 -mindepth 1 -type d`; do
 cd $dir &&
 PKG_CONFIG_PATH="${PKG_CONFIG_PATH32}" ./configure $XORG_CONFIG32 &&
 make install &&
 make clean &&
 PKG_CONFIG_PATH="${PKG_CONFIG_PATH64}" ./configure $XORG_CONFIG64 &&
 make install
 cd ..;
done
  0209-XORG7.2-Utilities
代码:
cd /sources/xorg-7.2
wget http://cblfs.cross-lfs.org/images/d/da/Util-7.2.wget
cd util
wget -B http://xorg.freedesktop.org/releases/X11R7.2/src/util/ -i ../Util-7.2.wget

# The semi-automated build assumes that you have created the subdirectories discussed in the introduction. After entering the utils directory, unpack the packages:

for i in *.tar.bz2; do
 tar xvf $i;
done

# Make and install xorg-cf-files:
cd xorg-cf-files* &&
sed -i "s@/usr/X11R6@$XORG_PREFIX@" X11.tmpl &&
CC="gcc ${BUILD32}" CXX="g++ ${BUILD32}" PKG_CONFIG_PATH="${PKG_CONFIG_PATH32}" \
./configure $XORG_CONFIG32 &&
make install &&
make clean &&
sed -i "s@/usr/X11R6@$XORG_PREFIX@" X11.tmpl &&
CC="gcc ${BUILD64}" CXX="g++ ${BUILD64}" PKG_CONFIG_PATH="${PKG_CONFIG_PATH64}" \
./configure $XORG_CONFIG64 &&
make install &&
cd ..

# Make and install imake:
cd imake* &&
CC="gcc ${BUILD32}" CXX="g++ ${BUILD32}" PKG_CONFIG_PATH="${PKG_CONFIG_PATH32}" \
./configure $XORG_CONFIG32 --with-script-preproc-cmd="gcc ${BUILD32} -E" &&
make &&
make install &&
mv -v ${XORG_PREFIX}/bin/imake{,-32} &&
mv -v ${XORG_PREFIX}/bin/xmkmf{,-32} &&
mv -v ${XORG_PREFIX}/bin/ccmakedep{,-32} &&
make clean &&
CC="gcc ${BUILD64}" CXX="g++ ${BUILD64}" PKG_CONFIG_PATH="${PKG_CONFIG_PATH64}" \
./configure $XORG_CONFIG64 --with-script-preproc-cmd="gcc ${BUILD64} -E" &&
make &&
make install &&
mv -v ${XORG_PREFIX}/bin/imake{,-64} &&
mv -v ${XORG_PREFIX}/bin/xmkmf{,-64} &&
mv -v ${XORG_PREFIX}/bin/ccmakedep{,-64} &&
ln -sfv /usr/bin/multiarch_wrapper ${XORG_PREFIX}/bin/imake &&
ln -sfv /usr/bin/multiarch_wrapper ${XORG_PREFIX}/bin/xmkmf &&
ln -sfv /usr/bin/multiarch_wrapper ${XORG_PREFIX}/bin/ccmakedep
cd ..

# Make and install the remaining packages:
for dir in gccmakedep lndir makedepend; do
cd ${dir}* &&
CC="gcc ${BUILD32}" CXX="g++ ${BUILD32}" PKG_CONFIG_PATH="${PKG_CONFIG_PATH32}" \
./configure $XORG_CONFIG32 &&
make &&
make install &&
make clean &&
CC="gcc ${BUILD64}" CXX="g++ ${BUILD64}" PKG_CONFIG_PATH="${PKG_CONFIG_PATH64}" \
./configure $XORG_CONFIG64 &&
make &&
make install &&
cd ..;
done
  0210-libXau_form_xorg7.2_lirarie
代码:
cd /sources
wget -c http://xorg.freedesktop.org/releases/X11R7.2/src/lib/libXau-X11R7.2-1.0.3.tar.bz2
tar xvf /sources/xorg-7.2/lib/libXau-X11R7.2-1.0.3.tar.bz2
cd libXau-X11R7.2-1.0.3
# Compile the library.
PKG_CONFIG_PATH="${PKG_CONFIG_PATH32}" CC="gcc ${BUILD32}" CXX="g++ ${BUILD32}" \
./configure $XORG_CONFIG32 &&
make
# Install the library.
make install

make distclean
PKG_CONFIG_PATH="${PKG_CONFIG_PATH64}" CC="gcc ${BUILD64}" CXX="g++ ${BUILD64}" \
./configure $XORG_CONFIG64 &&
make &&
make install
cd /sources
rm -rf libXau-X11R7.2-1.0.3
  0211-libxcb
代码:
# Required
# * xcb-proto
# * libpthread-stubs
# * LibXSLT
# * libXau from Xorg7/Libraries

cd /sources
tar xvf /CBLFS/libxcb-1.0.tar.bz2 
cp -a libxcb-1.0{,-64}
# 32bit
cd libxcb-1.0
# Compile the package:
CC="gcc ${BUILD32}" PKG_CONFIG_PATH=${PKG_CONFIG_PATH32} \
./configure $XORG_CONFIG32 &&
make
# Install the package
make install

cd ../libxcb-1.0-64
# 64Bit
# Compile the package:
CC="gcc ${BUILD64}" PKG_CONFIG_PATH=${PKG_CONFIG_PATH64} \
./configure $XORG_CONFIG64 &&
make
# Install the package
make install
cd /sources
rm -rf libxcb-1.0{,-64}
  0212-Gperf
代码:
cd /CBLFS/
wget -c ftp://ftp.gnu.org/pub/gnu/gperf/gperf-3.0.3.tar.gz
cd /sources
tar xvf /CBLFS/gperf-3.0.3.tar.gz
cp -a gperf-3.0.3{,-64}
# 32bit
cd gperf-3.0.3
# Compile the package:
CC="gcc ${BUILD32}" CXX="g++ ${BUILD32}" \
./configure --prefix=/usr &&
make
# Install the package
make install
mv -v /usr/bin/gperf{,-32}

# 64bit
cd ../gperf-3.0.3-64
# Compile the package:
CC="gcc ${BUILD64}" CXX="g++ ${BUILD64}" \
./configure --prefix=/usr &&
make
# Install the package
make install
cd /sources
rm -rf gperf-3.0.3{,-64}
  0213-xcb-utils
代码:
# Required
# * libxcb
# * Gperf
cd /sources
tar xvf /CBLFS/xcb-util-0.2.tar.bz2 
cp -a xcb-util-0.2{,-64}
# 32bit
cd xcb-util-0.2
# Compile the package:
CC="gcc ${BUILD32}" PKG_CONFIG_PATH="${PKG_CONFIG_PATH32}" \
./configure $XORG_CONFIG32 &&
make
# Install the package
make install

# 64bit
cd ../xcb-util-0.2-64
# Compile the package:
CC="gcc ${BUILD64}" PKG_CONFIG_PATH="${PKG_CONFIG_PATH64}" \
./configure $XORG_CONFIG64 &&
make
# Install the package
make install
cd /sources
rm -rf xcb-util-0.2{,-64}
  0214-fontconfig
代码:
# Required
# * FreeType
# * expat
cd /sources
tar xvf /CBLFS/fontconfig-2.4.2.tar.gz 
cp -a fontconfig-2.4.2{,-64}
# 32bit
cd fontconfig-2.4.2
# Compile the package:
USE_ARCH=32 CC="gcc ${BUILD32}" ./configure --prefix=/usr \
 --sysconfdir=/etc --localstatedir=/var --disable-docs --without-add-fonts \
 --with-docdir=/usr/share/doc/fontconfig-2.4.2 &&
make
# Install the package
make install

cd ../fontconfig-2.4.2-64
#64Bit
# Compile the package:
USE_ARCH=64 CC="gcc ${BUILD64}" ./configure --prefix=/usr \
 --sysconfdir=/etc --localstatedir=/var --disable-docs --without-add-fonts \
 --with-docdir=/usr/share/doc/fontconfig-2.4.2 \
 --libdir=/usr/lib64 &&
make
# Install the package
make install &&
install -v -m644 doc/*.3 /usr/share/man/man3 &&
install -v -m644 doc/*.5 /usr/share/man/man5 &&
install -v -m755 -d /usr/share/doc/fontconfig-2.4.2/fontconfig-devel &&
install -v -m644 doc/*.{html,pdf,txt} /usr/share/doc/fontconfig-2.4.2 &&
install -v -m644 doc/fontconfig-devel/* /usr/share/doc/fontconfig-2.4.2/fontconfig-devel
cd /sources
rm -rf fontconfig-2.4.2{,-64}
  0215-libpng
代码:
cd /sources
tar xvf /CBLFS/libpng-1.2.18.tar.bz2 
cp -a libpng-1.2.18{,-64}
# 32bit
cd libpng-1.2.18
# Compile the package:
CC="gcc ${BUILD32}" ./configure --prefix=/usr &&
make
# Install the package
make install &&
mv -v /usr/bin/libpng12-config{,-32} &&
ln -sfv libpng12-config-32 /usr/bin/libpng-config-32

# 64bit
cd ../libpng-1.2.18-64
# Compile the package:
CC="gcc ${BUILD64}" ./configure --prefix=/usr --libdir=/usr/lib64 &&
make
# Install the package
make install &&
mv -v /usr/bin/libpng12-config{,-64} &&
ln -sfv libpng12-config-64 /usr/bin/libpng-config-64 &&
ln -sfv multiarch_wrapper /usr/bin/libpng-config &&
ln -sfv multiarch_wrapper /usr/bin/libpng12-config &&
install -v -m755 -d /usr/share/doc/libpng-1.2.18 &&
install -v -m644 README libpng-1.2.18.txt /usr/share/doc/libpng-1.2.18
cd /sources
rm -rf libpng-1.2.18{,-64}
受字数限制,分两次。

作者: tfkdmwmqtr   发布时间: 2007-09-13

  0216-XORG-7.2-Libraries
代码:
# Required 
#       * FreeType
#       * FontConfig
# Recommended Optional
#       * XCB

cd /sources/xorg-7.2
#get http://cblfs.cross-lfs.org/images/5/5f/Lib-7.2.wget &&
cd lib &&
wget -B http://xorg.freedesktop.org/releases/X11R7.2/src/lib/ -i ../Lib-7.2.wget

# After entering the lib subdirectory and downloading the tarballs, unpack the packages:
for i in *.tar.bz2; do
 tar xjvf $i;
done

# Build and install each library:
for dir in `sed "s/.tar.bz2//g" ../Lib-7.2.wget`; do
 cd ${dir} &&
 PKG_CONFIG_PATH="${PKG_CONFIG_PATH32}" CC="gcc ${BUILD32}" CXX="g++ ${BUILD32}" \
 ./configure $XORG_CONFIG32 &&
 make &&
 make install &&
 make distclean &&
 PKG_CONFIG_PATH="${PKG_CONFIG_PATH64}" CC="gcc ${BUILD64}" CXX="g++ ${BUILD64}" \
 ./configure $XORG_CONFIG64 &&
 make &&
 make install &&
 cd ..;
done
  0217-Xorg-7.2-libdrm
代码:
#http://dri.freedesktop.org/libdrm/libdrm-2.3.0.tar.bz2
cd /sources
tar xvf /CBLFS/libdrm-2.3.0.tar.bz2 
cd libdrm-2.3.0
# 32Bit
# Compile the package:
CC="gcc ${BUILD32}" ./configure $XORG_CONFIG32 &&
make
# Install the package:
make install
cd /sources
rm -rf libdrm-2.3.0

cd /sources
tar xvf /CBLFS/libdrm-2.3.0.tar.bz2
cd libdrm-2.3.0
# 64Bit
# Compile the package:
CC="gcc ${BUILD64}" ./configure $XORG_CONFIG64 &&
make
# Install the package:
make install
cd /sources
rm -rf libdrm-2.3.0
  0218-MesaLib
代码:
# Required
# * Xorg Protocol Headers glproto >=1.4.5
# * Xorg Libraries
# * Xorg Utilities
# * libdrm
# Optional 
# * XCB

#http://downloads.sourceforge.net/mesa3d/MesaLib-6.5.2.tar.bz2
#http://downloads.sourceforge.net/mesa3d/MesaDemos-6.5.2.tar.bz2
#http://downloads.sourceforge.net/mesa3d/MesaGLUT-6.5.2.tar.bz2
#http://svn.cross-lfs.org/svn/repos/patches/Mesa/mesa-6.5.2-drop_static_inline.patch

cd /sources
tar xvf /CBLFS/MesaLib-6.5.2.tar.bz2 
tar xvf /CBLFS/MesaDemos-6.5.2.tar.bz2
tar xvf /CBLFS/MesaGLUT-6.5.2.tar.bz2 
# 32Bit
# The Mesa source is needed to build Xorg7/Xserver, save the Mesa source tree for use with the build.
cp -a Mesa-6.5.2{,-32} &&
cd Mesa-6.5.2-32
# Apply a patch that solves some linker errors with the savage dri driver.
patch -Np1 -i /CBLFS/mesa-6.5.2-drop_static_inline.patch
# Create a config:
ln -sf linux-dri configs/current &&
echo 'X11_INCLUDES = $(shell pkg-config --cflags-only-I x11)' >> configs/current &&
echo 'CFLAGS += $(X11_INCLUDES)' >> configs/current &&
echo 'EXTRA_LIB_PATH = $(shell pkg-config --libs-only-L x11)' >> configs/current &&
echo "DRI_DRIVER_INSTALL_DIR = ${XORG_PREFIX}/lib/xorg/modules/dri" >> configs/current &&
echo "INSTALL_DIR = /usr" >> configs/current &&
echo "LIB_DIR = lib" >> configs/current
# If you have XCB installed you also need to add the following to the config:
echo 'DEFINES += -DUSE_XCB' >> configs/current &&
echo 'X11_INCLUDES += $(shell pkg-config --cflags-only-I xcb x11-xcb xcb-glx)' >> configs/current &&
echo 'GL_LIB_DEPS += $(shell pkg-config --libs xcb x11-xcb xcb-glx)' >> configs/current
# Compile the package:
PKG_CONFIG_PATH="${PKG_CONFIG_PATH32}" \
make CC="gcc ${BUILD32}" CXX="g++ ${BUILD32}" default
# Install the package:
make install
cd /sources
# The Mesa source is needed to build Xorg7/Xserver, save the Mesa source tree for use with the build. 
#rm -rf Mesa-6.5.2-32

# 64Bit
# The Mesa source is needed to build Xorg7/Xserver, save the Mesa source tree for use with the build.
mv Mesa-6.5.2{,-64} &&
cd Mesa-6.5.2-64
# Apply a patch that solves some linker errors with the savage dri driver.
patch -Np1 -i /CBLFS/mesa-6.5.2-drop_static_inline.patch
# Create a config:
ln -sf linux-dri configs/current &&
echo 'X11_INCLUDES = $(shell pkg-config --cflags-only-I x11)' >> configs/current &&
echo 'CFLAGS += $(X11_INCLUDES)' >> configs/current &&
echo 'EXTRA_LIB_PATH = $(shell pkg-config --libs-only-L x11)' >> configs/current &&
echo "DRI_DRIVER_INSTALL_DIR = ${XORG_PREFIX}/lib64/xorg/modules/dri" >> configs/current &&
echo "INSTALL_DIR = /usr" >> configs/current &&
echo "LIB_DIR = lib64" >> configs/current
# If you have XCB installed you also need to add the following to the config:
echo 'DEFINES += -DUSE_XCB' >> configs/current &&
echo 'X11_INCLUDES += $(shell pkg-config --cflags-only-I xcb x11-xcb xcb-glx)' >> configs/current &&
echo 'GL_LIB_DEPS += $(shell pkg-config --libs xcb x11-xcb xcb-glx)' >> configs/current
# Compile the package:
PKG_CONFIG_PATH="${PKG_CONFIG_PATH64}" \
make CC="gcc ${BUILD64}" CXX="g++ ${BUILD64}" default
# Install the package:
make install
# If you would like to build and install glxinfo and glxgears execute the following command:
PKG_CONFIG_PATH="${PKG_CONFIG_PATH64}" \
 make CC="gcc ${BUILD64}" -C progs/xdemos glxinfo glxgears &&
install -m755 -v progs/xdemos/{glxinfo,glxgears} /usr/bin
cd /sources
#The Mesa source is needed to build Xorg7/Xserver, save the Mesa source tree for use with the build. 
#rm -rf Mesa-6.5.2-64
  0219-xbitmaps
代码:
# Required
# * Xorg Utilities
cd /sources
tar xvf /CBLFS/xbitmaps-X11R7.0-1.0.1.tar.bz2 
cp -a xbitmaps-X11R7.0-1.0.1{,-64}
# 32Bit
cd xbitmaps-X11R7.0-1.0.1
# Configure the package:
CC="gcc ${BUILD32}" ./configure $XORG_CONFIG32
# Install the package:
make install

# 64bit
cd ../xbitmaps-X11R7.0-1.0.1-64
# Configure the package:
CC="gcc ${BUILD64}" ./configure $XORG_CONFIG64
# Install the package:
make install
cd /sources
rm -rf xbitmaps-X11R7.0-1.0.1
  0220-Apps
代码:
# Required
# * xbitmaps
# * libpng
# * MesaLib
# * FreeType
# * libXfont --> Xorg-7.2 / Lib

cd /sources/xorg-7.2
wget http://cblfs.cross-lfs.org/images/c/cd/App-7.2.wget &&
cd app &&
wget -B http://xorg.freedesktop.org/releases/X11R7.2/src/app/ -i ../App-7.2.wget

for i in *.tar.bz2; do
 tar xvf $i;
done

# Build and install the applications in the App-7.2.wget file:
for dir in `sed "s/.tar.bz2//g" ../App-7.2.wget`; do
 cd ${dir} &&
 PKG_CONFIG_PATH="${PKG_CONFIG_PATH32}" CC="gcc ${BUILD32}" CXX="g++ ${BUILD32}" \
 ./configure $XORG_CONFIG32 &&
 make &&
 make install &&
 make distclean &&
 PKG_CONFIG_PATH="${PKG_CONFIG_PATH64}" CC="gcc ${BUILD64}" CXX="g++ ${BUILD64}" \
 ./configure $XORG_CONFIG64 &&
 make &&
 make install &&
 cd ..;
done
  0221-XML-Parser
代码:
cd /sources
tar xf /CBLFS/XML-Parser-2.34.tar.gz 
cp -a XML-Parser-2.34{,-64}
# 32 bit
cd XML-Parser-2.34
USE_ARCH=32 perl Makefile.PL
make
make test
make install

# 64bit
cd ../XML-Parser-2.34-64
USE_ARCH=64 perl Makefile.PL &&
make &&
make test
make install
cd ..
rm -rf XML-Parser-2.34{,-64}
  0222-Data
代码:
#http://xorg.freedesktop.org/releases/X11R7.2/src/data/xcursor-themes-X11R7.0-1.0.1.tar.bz2
#http://xorg.freedesktop.org/releases/X11R7.2/src/extras/xkeyboard-config-0.9.tar.bz2
#http://svn.cross-lfs.org/svn/repos/patches/xkeyboard-config/xkeyboard-config-0.9-use_relative_path-1.patch
#Required
# * Xorg Apps
# * XML::Parser
cd /sources
# 32bit
tar xvf /CBLFS/xcursor-themes-X11R7.0-1.0.1.tar.bz2
cd xcursor-themes-X11R7.0-1.0.1
# Install xcursor-themes with the following command:
PKG_CONFIG_PATH="${PKG_CONFIG_PATH32}" CC="gcc ${BUILD32}" CXX="g++ ${BUILD32}" \
./configure $XORG_CONFIG32 &&
make &&
make install
# Install xkeyboard-config with the following command:
tar xvf /CBLFS/xkeyboard-config-0.9.tar.bz2
cd xkeyboard-config-0.9
patch -Np1 -i /CBLFS/xkeyboard-config-0.9-use_relative_path-1.patch
./configure $XORG_CONFIG32 \
 --with-xkb-base=${XORG_PREFIX}/share/X11/xkb \
 --with-xkb-rules-symlink=xorg --enable-compat-rules &&
make &&
make install
cd /sources
rm -rf xcursor-themes-X11R7.0-1.0.1

# 64bit
cd /sources
tar xvf /CBLFS/xcursor-themes-X11R7.0-1.0.1.tar.bz2
cd xcursor-themes-X11R7.0-1.0.1
# 64Bit
# Install xcursor-themes with the following command:
PKG_CONFIG_PATH="${PKG_CONFIG_PATH64}" CC="gcc ${BUILD64}" CXX="g++ ${BUILD64}" \
./configure $XORG_CONFIG64 &&
make &&
make install
# Install xkeyboard-config with the following command:
tar xvf /CBLFS/xkeyboard-config-0.9.tar.bz2
cd xkeyboard-config-0.9
patch -Np1 -i /CBLFS/xkeyboard-config-0.9-use_relative_path-1.patch
./configure $XORG_CONFIG64 \
 --with-xkb-base=${XORG_PREFIX}/share/X11/xkb \
 --with-xkb-rules-symlink=xorg --enable-compat-rules &&
make &&
make install
cd /sources
rm -rf xcursor-themes-X11R7.0-1.0.1
  0223-Fonts
代码:
ldconfig
cd /sources/xorg-7.2
wget http://cblfs.cross-lfs.org/images/1/17/Font-7.2.wget &&
cd font &&
wget -B http://xorg.freedesktop.org/releases/X11R7.2/src/font/ -i ../Font-7.2.wget

for i in *.tar.bz2; do
 tar xvf $i;
done

for dir in `sed "s/.tar.bz2//g" ../Font-7.2.wget`; do
 cd ${dir} &&
 sed -i 's:${libdir}/X11/fonts:/usr/share/fonts:g' configure &&
 PKG_CONFIG_PATH="${PKG_CONFIG_PATH32}" CC="gcc ${BUILD32}" \
 ./configure $XORG_CONFIG32 &&
 make &&
 make install &&
 make distclean &&
 PKG_CONFIG_PATH="${PKG_CONFIG_PATH64}" CC="gcc ${BUILD64}" \
 ./configure $XORG_CONFIG64 && 
 make &&
 make install &&
 cd ..;
done
  0224-Xserver
代码:
#http://xorg.freedesktop.org/releases/X11R7.2/src/xserver/xorg-server-X11R7.2-1.2.0.tar.bz2
ldconfig
cd /sources
tar xf /CBLFS/xorg-server-X11R7.2-1.2.0.tar.bz2 
cp -a xorg-server-X11R7.2-1.2.0{,-64}
# 32bit
cd xorg-server-X11R7.2-1.2.0
sed -i 's@-I$(top_builddir)/include@-I$(top_builddir)/GL/mesa/main@8' GL/glx/Makefile.in 
sed -i 's@-I$(top_builddir)/include@-I$(top_builddir)/GL/mesa/glapi@7' GL/glx/Makefile.in

sed -i '/xpconfigdir=/s@=.*@=$datadir/X11/xserver@' configure 
sed -i '/-DXPRINTDIR/s/libdir/datadir/' hw/xprint/Makefile.in 
PKG_CONFIG_PATH="${PKG_CONFIG_PATH32}" USE_ARCH=32 CC="gcc ${BUILD32}" \
./configure $XORG_CONFIG32 --enable-install-setuid \
 --with-dri-driver-path="${XORG_PREFIX}/lib/xorg/modules/dri" \
 --with-fontdir="/usr/share/fonts" \
 --with-mesa-source="${PWD}/../Mesa-6.5.2-32" 
make 
make install


# 64bit
cd ../xorg-server-X11R7.2-1.2.0-64
sed -i 's@-I$(top_builddir)/include@-I$(top_builddir)/GL/mesa/main@8' GL/glx/Makefile.in 
sed -i 's@-I$(top_builddir)/include@-I$(top_builddir)/GL/mesa/glapi@7' GL/glx/Makefile.in

sed -i '/xpconfigdir=/s@=.*@=$datadir/X11/xserver@' configure 
sed -i '/-DXPRINTDIR/s/libdir/datadir/' hw/xprint/Makefile.in
PKG_CONFIG_PATH="${PKG_CONFIG_PATH64}" USE_ARCH=64 CC="gcc ${BUILD64}" \
./configure $XORG_CONFIG64 --enable-install-setuid \
 --with-dri-driver-path="${XORG_PREFIX}/lib64/xorg/modules/dri" \
 --with-fontdir="/usr/share/fonts" \
 --with-mesa-source="${PWD}/../Mesa-6.5.2-64" 
make
make install
cd ..
  0225-Xorg-Drivers
代码:
# Required : Xserver
cd /sources/xorg-7.2 
wget http://cblfs.cross-lfs.org/index.php/Special:Filepath/Driver-7.3.wget
cd driver &&
wget -B http://xorg.freedesktop.org/releases/X11R7.3/src/driver/ -i ../Driver-7.3.wget
cd /sources
mkdir -pv driver
cd driver
# driver.list
cat > driver.list << "EOF"
xf86-input-void-X11R7.1-1.1.0
xf86-input-keyboard-X11R7.2-1.1.1
xf86-input-mouse-X11R7.2-1.1.2
xf86-video-vesa-X11R7.2-1.3.0
xf86-video-vga-X11R7.1-4.1.0
xf86-video-chips-X11R7.1-1.1.1
EOF
# 仅安装上面的这几个驱动就已经足够启动图形了,但最好还是将适合自己显卡的驱动装上。
# ati显卡的将 ati 的加到上面,nvidia的将nv的加到上面。详情看 CBLFS 手册。
for x in `cat driver.list` ;do
 tar xf /sources/xorg-7.2/driver/$x.tar.bz2
done &&
# 
for dir in `cat driver.list`; do
 cd ${dir} &&
 PKG_CONFIG_PATH="${PKG_CONFIG_PATH32}" CC="gcc ${BUILD32}" CXX="g++ ${BUILD32}" \
 ./configure ${XORG_CONFIG32} &&
 make &&
 make install &&
 make distclean &&
 PKG_CONFIG_PATH="${PKG_CONFIG_PATH64}" CC="gcc ${BUILD64}" CXX="g++ ${BUILD64}" \
 ./configure ${XORG_CONFIG64} &&
 make &&
 make install &&
 cd .. ;
done
  0226-Xorg-xterm
代码:
cd /sources
tar xf /CBLFS/xterm-227.tgz 
cp -a xterm-227{,-64}
cd xterm-227
#32bit
USE_ARCH=32 CC="gcc ${BUILD32}" \
PKG_CONFIG_PATH="${PKG_CONFIG_PATH32}" \
./configure ${XORG_CONFIG32} --with-wide-chars \
 --with-app-defaults=${XORG_PREFIX}/share/X11/app-defaults &&
make
make install &&
make install-ti

# 64bit
cd ../xterm-227-64
USE_ARCH=64 CC="gcc ${BUILD64}" \
PKG_CONFIG_PATH="${PKG_CONFIG_PATH64}" \
./configure ${XORG_CONFIG64} --with-wide-chars \
 --with-app-defaults=${XORG_PREFIX}/share/X11/app-defaults &&
make
make install &&
make install-ti

# Configuring
cat >> $XORG_PREFIX/share/X11/app-defaults/XTerm << "EOF"
*VT100*locale: true
*VT100*faceName: Monospace
*VT100*faceSize: 10
EOF

cd ..
rm -rf xterm-227{,-64}
  0227-Xorg-rman
代码:
cd /sources
tar xf /CBLFS/rman-3.2.tar.gz 
cd rman-3.2
# Non-Multilib or Multilib
# 这里,Non-Multilib和Multilib都用这种方法安装
sed -i -e "s@/opt/local@$XORG_PREFIX@" \
 -e "s@/usr/local@$XORG_PREFIX/share@" \
 -e "s@share/man@man@" Makefile
make
make install
cd ..
rm -rf /sources/rman-3.2
  0228-Config
代码:
# # FHS Symlinks # #
# If you installed an X Window System into a prefix other then /usr and you wish to be FHS compliant, it is necessary to create some symbolic links. 
# 如果 Xorg 不是安装在 /usr 目录,而是 /usr/X11R7 或者其它目录,这里需要建链接如下:
 ln -sv ${XORG_PREFIX}/bin /usr/bin/X11
 ln -sv ${XORG_PREFIX}/include/X11 /usr/include/X11
# Non-Multilib
# ln -sv ${XORG_PREFIX}/lib/X11 /usr/lib/X11

# Multilib
# 因为是 x86_64-Multilib , 所以 N32 的就不需要做链接了。
 ln -sv ${XORG_PREFIX}/lib/X11 /usr/lib/X11
# ln -sv ${XORG_PREFIX}/lib32/X11 /usr/lib32/X11
 ln -sv ${XORG_PREFIX}/lib64/X11 /usr/lib64/X11
# Creating /etc/X11/xorg.conf
 cd ~ &&
 Xorg -configure
#This will create a configuration file in root's home directory called xorg.conf.new. You may edit this file to provide specific settings for your system. Some things that are commonly edited.
#In Section "Files". Change the order of the font paths searched or remove some font directories completely (of course why did you install them if you weren't going to use them?).
#In Section "Module". If you are going to install nVidia drivers, remove the "Load dri" line.
#In Section "Device". You may want to set some of the options available for your selected video driver. If you have an nVidia chip, whether using the "nv" or the "nvidia" driver, you may need to edit this section to resolve Xorg bug 3009 involving a missing mouse pointer. Add this line to Section "Device".
###### NV 
# 如果是 nvidia 的显卡,需要在 生成的 xorg 配置文件中加这么一句:
# Option "HWCursor" "off"
#运行 X -config ~/xorg.conf.new 生成 xorg 配置文件,这里会看到屏幕上出现 X 形状的鼠标指针。可以按 Ctrl Shift 和 Backspace 键退出。运行这条命令偶尔会看到屏幕上出现开机时BIOS的启动画面,四月中旬我的台式机见过一次,前几日我的笔记本见到一次。出现这种现在本机键盘会暂时失灵。这时,可以从另一台机器 ssh 登录,然后 重启机器,否则只好按 reset 或 power 键了。
 X -config ~/xorg.conf.new
 install -v -m755 -D ~/xorg.conf.new /etc/X11/xorg.conf

  上面这些做完之后,运行 startx 稍等待就可以看到屏幕中出现 三个终端。

  也可以这样测试xorg是否安装好了,这里用 BLFS 手册的方法:

  0229-Xorg-test
代码:
cat > ~/.xinitrc << "EOF" &&
# Begin .xinitrc file
xterm -g 80x40+0+0 &
xclock -g 100x100-0+0 &
twm
EOF
cat >> /etc/sysconfig/createfiles << "EOF"
/tmp/.ICE-unix dir 1777 root root
EOF
代码:
cat > 0230-test-test << "EOF"
startx
xcalc &
EOF
bash 30-test-test

作者: tfkdmwmqtr   发布时间: 2007-09-13

引用:
作者: tfkdmwmqtr
今天准备写到凌晨两点。

好,辛苦了,我等。。。!

作者: d00m3d   发布时间: 2007-09-13

X Libraries

  本文选择安装一个简单的KDE桌面环境。

  这里,只选择安装很少的软件包,适当选择几个较有用的包装上。由于本文选择的软件都很新,一定会有很多软件装不上,很多软件都可能会编译出错。
  现在先安装一些 KDE 桌面环境必須的和可选的软件包。CBLFS手册中把它们归纳为 X Libraries ,也就是 Xwindow 库。

QT3安装过程:

  0301-giflib
  giflib不是必須的,KDE也不依赖它,手册中也没有推荐安装它。可以选择不编译这个软件。
代码:
cd /sources
tar xf /CBLFS/giflib-4.1.4.tar.bz2
cp -a giflib-4.1.4{,-64}
# 32bit
cd giflib-4.1.4
CC="gcc ${BUILD32}" LDFLAGS="-L/usr/lib" ./configure --prefix=/usr &&
make
make install

# 64bit
cd ../giflib-4.1.4-64
CC="gcc ${BUILD64}" ./configure --prefix=/usr --libdir=/usr/lib64 &&
make
make install &&
install -v -m755 -d /usr/share/doc/giflib-4.1.4/html &&
install -v -m644 doc/*.{png,html} \
 /usr/share/doc/giflib-4.1.4/html &&
install -v -m644 doc/*.txt \
 /usr/share/doc/giflib-4.1.4

cd ..
rm -rf giflib-4.1.4{,-64}
  0302-libjpeg
代码:
cd /sources
tar xvf /CBLFS/jpegsrc.v6b.tar.gz
cp -a jpeg-6b{,-64}
# 32bit
cd jpeg-6b
patch -Np1 -i /CBLFS/jpeg-6b-config_update-1.patch &&
CC="gcc ${BUILD32}" ./configure --prefix=/usr --enable-static --enable-shared &&
make
make install

# 64bit
cd ../jpeg-6b-64
patch -Np1 -i /CBLFS/jpeg-6b-config_update-1.patch &&
CC="gcc ${BUILD64}" ./configure --prefix=/usr --libdir=/usr/lib64 \
 --enable-static --enable-shared &&
make libdir=/usr/lib64
make libdir=/usr/lib64 install
cd ..
rm -rf jpeg-6b{,-64}
  0303-little_cms
  libmng 会依赖这个包,而编译qt3必須先安装有libmng 。
代码:
cd /sources
tar xvf /CBLFS/lcms-1.16.tar.gz
cp -a lcms-1.16{,-64}
# 32bit
cd lcms-1.16
CC="gcc ${BUILD32}" ./configure --prefix=/usr &&
make
make install

# 64bit
cd ../lcms-1.16-64
CC="gcc ${BUILD64}" ./configure --prefix=/usr --libdir=/usr/lib64 &&
make
make install &&
install -v -m755 -d /usr/share/doc/lcms-1.16 &&
install -v -m644 README.1ST doc/* /usr/share/doc/lcms-1.16
cd ..
rm -rf lcms-1.16{,-64}
  0304-libmng
代码:
cd /sources
tar xvf /CBLFS/libmng-1.0.10.tar.gz
cp -a libmng-1.0.10{,-64}
# 32bit
cd libmng-1.0.10
cp makefiles/makefile.linux Makefile
patch -Np1 -i /CBLFS/libmng-1.0.10-libdir-1.patch
make CC="gcc ${BUILD32}"
make install

# 64bit
cd ../libmng-1.0.10-64
cp makefiles/makefile.linux Makefile
patch -Np1 -i /CBLFS/libmng-1.0.10-libdir-1.patch
make CC="gcc ${BUILD64}" libdir=/usr/lib64
make libdir=/usr/lib64 install
install -v -m644 doc/man/*.3 /usr/share/man/man3 &&
install -v -m644 doc/man/*.5 /usr/share/man/man5 &&
install -dv -m755 /usr/share/doc/libmng-1.0.10 &&
install -v -m644 doc/*.{png,txt} /usr/share/doc/libmng-1.0.10
cd ..
rm -rf libmng-1.0.10{,-64}
  0305-nas
  NAS 就是 Network Audio System , 网络音频系统。详见的手册有说明。
代码:
cd /sources
tar xvf /CBLFS/nas-1.9.src.tar.gz
cp -a nas-1.9{,-64}
# 32bit
cd nas-1.9
USE_ARCH=32 xmkmf &&
USE_ARCH=32 make World
# Install the package
USE_ARCH=32 make install

# 64bit
cd ../nas-1.9-64
# Compile the package:
USE_ARCH=64 xmkmf &&
USE_ARCH=64 make World
# Install the package
USE_ARCH=64 make install install.man &&
install -v -m755 -d /usr/share/doc/nas-1.9/pdf &&
install -v -m644 doc/pdf/* /usr/share/doc/nas-1.9/pdf &&
install -v -m644 doc/{README,actions,*.{ps,txt}} \
 /usr/share/doc/nas-1.9

cd ..
rm -rf nas-1.9{,-64}

# Configuration
# Create the NAS configuration file using the following command:
install -v -m644 /etc/nas/nasd.conf.eg /etc/nas/nasd.conf

# BootScript
# Install the /etc/rc.d/init.d/gpm init script included in the blfs-bootscripts package.
cd ../blfs-bootscripts-20060910
make install-nas
# The init script uses a default prefix of /usr/X11R6. If you've installed the X Window System into any other prefix, execute the following command, replacing <PREFIX> with the installation prefix of the X Window System.
sed -i "s@/usr/X11R6@${XORG_PREFIX}@g" /etc/rc.d/init.d/nas

/etc/rc.d/init.d/nas start
  0306-qt3
代码:
ldconfig

# If you would like to compile with MySQL support add the following to the configure command:
# -qt-sql-mysql
# And run this sed before compiling:
# sed -i "[email protected]@mysql/mysql.h@g" src/sql/drivers/mysql/qsql_mysql.h
# If you would like to compile with NAS support add the following to the configure command:
# 如果想编译加入 NAS 支持可以加入以下 configure 命令。(文中已加入支持)
# -system-nas-sound
cd /sources
tar xvf /CBLFS/qt-x11-free-3.3.8.tar.bz2 
cp -a qt-x11-free-3.3.8{,-64}
# 32bit
cd qt-x11-free-3.3.8
# If you're X Window System prefix is something other then /usr/X11R6 then run the following command to change the hard
# coded paths in the sources:
#  如果你的Xorg不是安装在 /usr/X11R6(本文安装在/usr/X11R7目录),需要运行以下命令改变 path :
####################################################################
for file in $(grep -lr "X11R6" *)
do
 sed -i "s@/usr/X11R6@${XORG_PREFIX}@g" $file
done
#####################################################################
# Compile the package
export QTDIR=$PWD &&
export LD_LIBRARY_PATH=$PWD/lib:$LD_LIBRARY_PATH &&
export PATH=$PWD/bin:$PATH &&
export QMAKESPEC=linux-g++-32 &&
patch -Np1 -i /CBLFS/qt-3.3.8-utf8-1.patch
./configure -prefix /opt/qt-3.3.8 \
-plugindir /opt/qt-3.3.8/lib/plugin \
-sysconfdir /etc/qt \
-qt-gif \
-system-zlib \
-system-libpng \
-system-libjpeg \
-system-libmng \
-plugin-imgfmt-png \
-plugin-imgfmt-jpeg \
-plugin-imgfmt-mng \
-no-exceptions \
-thread \
-system-nas-sound \
-tablet &&
make &&

# Install the package
make install &&
mv -v /opt/qt-3.3.8/bin/qmake{,-32} &&
mv -v /opt/qt-3.3.8/bin/uic{,-32} &&
mv -v /opt/qt-3.3.8/bin/moc{,-32} &&
mv -v /opt/qt-3.3.8/bin/qtconfig{,-32} &&
ln -sv libqt-mt.so /opt/qt-3.3.8/lib/libqt.so &&
install -dv -m755 /usr/share/qt 
#ln -v -snf ../../bin /usr/share/qt/bin &&
#ln -v -snf ../../include/qt /usr/share/qt/include &&
#ln -v -snf ../../lib /usr/share/qt/lib
ln -v -snf /opt/qt-3.3.8/bin /usr/share/qt/bin &&
ln -v -snf /opt/qt-3.3.8/include/qt /usr/share/qt/include &&
ln -v -snf /opt/qt-3.3.8/lib /usr/share/qt/lib


# 64bit
cd ../qt-x11-free-3.3.8-64
# If you're X Window System prefix is something other then /usr/X11R6 then run the following command to change the hard
# coded paths in the sources:
#  如果你的Xorg不是安装在 /usr/X11R6,需要运行以下命令改变 path :
####################################################################
for file in $(grep -lr "X11R6" *)
do
 sed -i "s@/usr/X11R6@${XORG_PREFIX}@g" $file
done
####################################################################
# Fix a known issue with QTSPEC linux-g++-64:
sed -i "/^QMAKE_LIBDIR_QT/s:/lib:&64:" mkspecs/linux-g++-64/qmake.conf

export QTDIR=$PWD &&
export LD_LIBRARY_PATH=$PWD/lib:$LD_LIBRARY_PATH &&
export PATH=$PWD/bin:$PATH &&
export QMAKESPEC=linux-g++-64 &&
patch -Np1 -i /CBLFS/qt-3.3.8-utf8-1.patch 
./configure -prefix /opt/qt-3.3.8 \
-libdir /opt/qt-3.3.8/lib64 \
-plugindir /opt/qt-3.3.8/lib64/plugin \
-L/usr/lib64 \
-sysconfdir /etc/qt \
-qt-gif \
-system-zlib \
-system-libpng \
-system-libjpeg \
-system-libmng \
-plugin-imgfmt-png \
-plugin-imgfmt-jpeg \
-plugin-imgfmt-mng \
-no-exceptions \
-thread \
-system-nas-sound \
-tablet &&
make &&

# Install the package
make install &&
mv -v /opt/qt-3.3.8/bin/qmake{,-64} &&
mv -v /opt/qt-3.3.8/bin/uic{,-64} &&
mv -v /opt/qt-3.3.8/bin/moc{,-64} &&
mv -v /opt/qt-3.3.8/bin/qtconfig{,-64} &&
ln -svf /usr/bin/multiarch_wrapper /opt/qt-3.3.8/bin/qmake &&
ln -svf /usr/bin/multiarch_wrapper /opt/qt-3.3.8/bin/uic &&
ln -svf /usr/bin/multiarch_wrapper /opt/qt-3.3.8/bin/moc &&
ln -svf /usr/bin/multiarch_wrapper /opt/qt-3.3.8/bin/qtconfig &&
ln -sv libqt-mt.so /opt/qt-3.3.8/lib64/libqt.so &&
#ln -v -snf ../../bin /usr/share/qt/bin &&
#ln -v -snf ../../include/qt /usr/share/qt/include &&
#ln -v -snf ../../lib /usr/share/qt/lib &&
ln -v -snf /opt/qt-3.3.8/bin /usr/share/qt/bin &&
ln -v -snf /opt/qt-3.3.8/include/qt /usr/share/qt/include &&
ln -v -snf /opt/qt-3.3.8/lib64 /usr/share/qt/lib64 &&
cp -Rv doc/man /opt/qt-3.3.8/doc &&
cp -Rv examples /opt/qt-3.3.8/doc &&
ln -svfn qt-3.3.8 /opt/qt

# Configuring
# /etc/profile.d/20-qt.sh
cat > /etc/profile.d/20-qt.sh << "EOF"
# Begin /etc/profile.d/20-qt.sh

export QTDIR=/opt/qt-3.3.8

export PATH="${PATH}:${QTDIR}/bin"

export PKG_CONFIG_PATH32="${PKG_CONFIG_PATH32}${PKG_CONFIG_PATH32+:}${QTDIR}/lib/pkgconfig"
export PKG_CONFIG_PATHN32="${PKG_CONFIG_PATHN32}${PKG_CONFIG_PATHN32+:}${QTDIR}/lib32/pkgconfig"
export PKG_CONFIG_PATH64="${PKG_CONFIG_PATH64}${PKG_CONFIG_PATH64+:}${QTDIR}/lib64/pkgconfig"

# End /etc/profile.d/20-qt.sh
EOF
source /etc/profile

cat >> /etc/ld.so.conf << "EOF" &&
# Begin qt addition to /etc/ld.so.conf

/opt/qt-3.3.8/lib
/opt/qt-3.3.8/lib32
/opt/qt-3.3.8/lib64

# End qt addition
EOF
ldconfig
  0307-qt3-test ( 非必須步骤 )
  这里测试 qt3 ,需要先启X ,如果先前安装过 xorg-7.2 之后是一直在图形环境中,可以运行以下命令测试。否则,应该先在字符环境中 startx 启动 X Window System 。CBLFS手册中没有讲到需要测试,只要编译安装 qt3 之后就可以了,测试并非必須的。但为了安心,还是测试一下比较好。
代码:
cat > 0307-qt3-test << "EOF"
qmake
designer &
assistant &
EOF

bash 0307-qt3-tes

KDE-Recommended

  KDE 主要依赖 X window System 和 qt 。除此之外,KDE的三个核心的软件包中 ARts 还依赖Glib2(前面安装过了);KdeLibs还需要装有Pcre;KdeBase仅需要前面两个KDE核心的软件包装上就可以了。所以现在,就已经可以着手编译 KDE 了。可以在 configure 检测的过程中注意查看屏幕上的提示信息,超过一屏的,用Shift 加上 Page up / Page down 向上/下翻屏。
  本文按照CBLFS手册,选择了少量的几个推荐安装的和可选安装的包。因为不需要与 Windows 的机器通信,所以这里没有安装 samba,不需要在KDE中加入samba支持 ;不需要打印,就没有编译cpus ;OpenEXR 不知道是啥,手册上有段说明,暂不编译( 编译KdeLibs时会提示没有安装这个 ) 。

  0401-libusb
代码:
cd /sources
tar xf /CBLFS/libusb-0.1.12.tar.gz
 cp -a libusb-0.1.12{,-64}
# 32bit
cd libusb-0.1.12
CC="gcc ${BUILD32}" CXX="g++ ${BUILD32}" PKG_CONFIG_PATH="${PKG_CONFIG_PATH32}" \
./configure --prefix=/usr \
 --disable-build-docs &&
make
make install &&
mv -v /usr/bin/libusb-config{,-32}

# 64bit
cd ../libusb-0.1.12-64
CC="gcc ${BUILD64}" CXX="g++ ${BUILD64}" PKG_CONFIG_PATH="${PKG_CONFIG_PATH64}" \
./configure --prefix=/usr \
 --libdir=/usr/lib64 --disable-build-docs &&
make
# If you wish to build the API documentation (see the required dependencies), issue the following command:
make apidox
# Install the package
make install &&
mv -v /usr/bin/libusb-config{,-64} &&
ln -sfv multiarch_wrapper /usr/bin/libusb-config
# If you built the HTML user manual, install it with the following commands:
#install -v -d -m755 /usr/share/doc/libusb-0.1.12/html &&
#install -v -m644 doc/html/* /usr/share/doc/libusb-0.1.12/html
# If you built the API documentation, install it with the following commands:
install -v -d -m755 /usr/share/doc/libusb-0.1.12/apidocs &&
install -v -m644 apidocs/html/* \
 /usr/share/doc/libusb-0.1.12/apidocs

cd ..
rm -rf libusb-0.1.12{,-64}
  0402-libtiff
代码:
cd /sources
tar xf /CBLFS/tiff-3.8.2.tar.gz
cp -a tiff-3.8.2{,-64}
# 32bit
cd tiff-3.8.2
CC="gcc ${BUILD32}" CXX="g++ ${BUILD32}" \
USE_ARCH=32 LDFLAGS="-L/usr/lib" \
./configure --prefix=/usr &&
make
make install

# 64bit
cd ../tiff-3.8.2-64
CC="gcc ${BUILD64}" CXX="g++ ${BUILD64}" \
USE_ARCH=64 LDFLAGS="-L/usr/lib64" \
./configure --prefix=/usr --libdir=/usr/lib64 &&
make
make install
cd ..
rm -rf tiff-3.8.2{,-64}
  很多软件需要 gtk2 ,这里把 gtk2 及依赖的几个包装上,省得以后麻烦。比如,firefox 、 gimp 都依赖 gtk2 。gtk2与KDE没有直接的关系。
  0403-atk
代码:
cd /sources
tar xf /CBLFS/atk-1.19.6.tar.bz2
cp -a atk-1.19.6{,-64}
# 32bit
cd atk-1.19.6
CC="gcc ${BUILD32}" PKG_CONFIG_PATH=$PKG_CONFIG_PATH32 \
 ./configure --prefix=/usr &&
make
make install

# 64bit
cd ../atk-1.19.6-64
CC="gcc ${BUILD64}" PKG_CONFIG_PATH=$PKG_CONFIG_PATH64 \
 ./configure --prefix=/usr --libdir=/usr/lib64 &&
make
make install
cd ..
rm -rf atk-1.19.6{,-64}
  0404-cairo
代码:
cd /sources
tar xf /CBLFS/cairo-1.4.10.tar.gz
cp -a cairo-1.4.10{,-64}
# 32bit
cd cairo-1.4.10
CC="gcc ${BUILD32}" PKG_CONFIG_PATH="$PKG_CONFIG_PATH32" \
USE_ARCH=32 ./configure --prefix=/usr &&
make
make install

# 64bit
cd ../cairo-1.4.10-64
CC="gcc ${BUILD64}" PKG_CONFIG_PATH="$PKG_CONFIG_PATH64" \
USE_ARCH=64 ./configure --prefix=/usr --libdir=/usr/lib64 &&
make
make install
cd ..
rm -rf cairo-1.4.10{,-64}
  0405-pango
代码:
cd /sources
tar xf /CBLFS/pango-1.18.1.tar.bz2
cp -a pango-1.18.1{,-64}
# 32bit
cd pango-1.18.1
#此处需要打补丁,否则后果很严重嘀说!
patch -Np1 -i /CBLFS/pango-1.18.0-multilib-1.patch
# The following commands make pango put it's configuration information in /etc/pango-32:
sed -i "s/BUILDENV/32/" pango/pango-utils.c \
 modules/Makefile.am modules/Makefile.in \
 pango/Makefile.am pango/Makefile.in
#Compile the package:
CC="gcc ${BUILD32}" USE_ARCH=32 \
PKG_CONFIG_PATH="${PKG_CONFIG_PATH32}" \
./configure --prefix=/usr --sysconfdir=/etc &&
make
#Install the package
make install &&
mv -v /usr/bin/pango-querymodules{,-32}

# 64bit
cd ../pango-1.18.1-64
patch -Np1 -i /CBLFS/pango-1.18.0-multilib-1.patch
sed -i "s/BUILDENV/64/" pango/pango-utils.c \
 modules/Makefile.am modules/Makefile.in \
 pango/Makefile.am pango/Makefile.in
# Compile the package:
CC="gcc ${BUILD64}" USE_ARCH=64 \
PKG_CONFIG_PATH="${PKG_CONFIG_PATH64}" \
./configure --prefix=/usr --sysconfdir=/etc \
 --libdir=/usr/lib64 &&
make
make install &&
mv -v /usr/bin/pango-querymodules{,-64} &&
ln -sfv multiarch_wrapper /usr/bin/pango-querymodules
cd ..
rm -rf pango-1.18.1{,-64}
  0406-gtk2
代码:
cd /sources
tar xf /CBLFS/gtk+-2.11.6.tar.bz2
cp -a gtk+-2.11.6{,-64}
# 32bit
cd gtk+-2.11.6
patch -Np1 -i /CBLFS/gtk+-2.11.6-multilib-1.patch &&
sed -i "s/BUILDENV/32/" gdk-pixbuf/gdk-pixbuf-io.c \
 gdk-pixbuf/Makefile.am gdk-pixbuf/Makefile.in \
 modules/input/Makefile.am modules/input/Makefile.in \
 gtk/gtkrc.c

CC="gcc ${BUILD32}" USE_ARCH=32 \
PKG_CONFIG_PATH="${PKG_CONFIG_PATH32}" \
./configure --prefix=/usr --sysconfdir=/etc &&
make
make install &&
mv -v /usr/bin/gdk-pixbuf-query-loaders{,-32} &&
mv -v /usr/bin/gtk-query-immodules-2.0{,-32}

# 64bit
cd ../gtk+-2.11.6-64
patch -Np1 -i /CBLFS/gtk+-2.11.6-multilib-1.patch &&
sed -i "s/BUILDENV/64/" gdk-pixbuf/gdk-pixbuf-io.c \
 gdk-pixbuf/Makefile.am gdk-pixbuf/Makefile.in \
 modules/input/Makefile.am modules/input/Makefile.in \
 gtk/gtkrc.c

CC="gcc ${BUILD64}" USE_ARCH=64 \
PKG_CONFIG_PATH="${PKG_CONFIG_PATH64}" \
./configure --prefix=/usr --libdir=/usr/lib64 \
 --sysconfdir=/etc &&
make

make install &&
mv -v /usr/bin/gdk-pixbuf-query-loaders{,-64} &&
mv -v /usr/bin/gtk-query-immodules-2.0{,-64} &&
ln -sfv multiarch_wrapper /usr/bin/gdk-pixbuf-query-loaders &&
ln -sfv multiarch_wrapper /usr/bin/gtk-query-immodules-2.0 &&
install -v -m755 -d /usr/share/doc/gtk+-2.11.6/{faq,tutorial} &&
cp -v -R docs/faq/html/* /usr/share/doc/gtk+-2.11.6/faq &&
cp -v -R docs/tutorial/html/* /usr/share/doc/gtk+-2.11.6/tutorial
  0407-glib1
  有些软件会需要gtk1,这里将glib1和gtk1安装上。
代码:
cd /sources
tar xvf /CBLFS/glib-1.2.10.tar.gz 
cp -a glib-1.2.10{,-64}
# 32bit
cd glib-1.2.10
patch -Np1 -i /CBLFS/glib-1.2.10-fixes-1.patch &&
patch -Np1 -i /CBLFS/glib-1.2.10-config_update-1.patch &&
CC="gcc ${BUILD32}" ./configure --prefix=/usr --host=${CLFS_TARGET32} &&
make
make install &&
LIBNAME=$(cat gmodule/libgmodule.la | grep library_names | cut -f2 -d"'" | cut -f1 -d" ") &&
chmod 755 /usr/lib/${LIBNAME} &&
mv -v /usr/bin/glib-config{,-32}

# 64bit
cd ../glib-1.2.10-64
patch -Np1 -i /CBLFS/glib-1.2.10-fixes-1.patch &&
patch -Np1 -i /CBLFS/glib-1.2.10-config_update-1.patch &&
CC="gcc ${BUILD64}" ./configure --prefix=/usr --libdir=/usr/lib64 &&
make
make install &&
LIBNAME=$(cat gmodule/libgmodule.la | grep library_names | cut -f2 -d"'" | cut -f1 -d" ") &&
chmod 755 /usr/lib64/${LIBNAME} &&
mv -v /usr/bin/glib-config{,-64} &&
ln -sfv multiarch_wrapper /usr/bin/glib-config

cd ..
rm -rf glib-1.2.10{,-64}
  0408-gtk1
代码:
# Required : Glib1
cd /sources
tar xvf /CBLFS/gtk+-1.2.10.tar.gz
cp -a gtk+-1.2.10{,-64}
# 32bit
cd gtk+-1.2.10
patch -Np1 -i /CBLFS/gtk+-1.2.10-config_update-1.patch &&
patch -Np1 -i /CBLFS/gtk+-1.2.10-fixes-1.patch &&
CC="gcc ${BUILD32}" USE_ARCH=32 PKG_CONFIG_PATH=${PKG_CONFIG_PATH32} \
./configure --prefix=/usr --sysconfdir=/etc \
 --x-libraries=${XORG_PREFIX}/lib &&
make
make install &&
mv -v /usr/bin/gtk-config{,-32}

cd ../gtk+-1.2.10-64
patch -Np1 -i /CBLFS/gtk+-1.2.10-config_update-1.patch &&
patch -Np1 -i /CBLFS/gtk+-1.2.10-fixes-1.patch &&
CC="gcc ${BUILD64}" USE_ARCH=64 PKG_CONFIG_PATH=${PKG_CONFIG_PATH64} \
 ./configure --prefix=/usr --sysconfdir=/etc \
 --libdir=/usr/lib64 --x-libraries=${XORG_PREFIX}/lib64 &&
make
make install &&
mv -v /usr/bin/gtk-config{,-64} &&
ln -sfv multiarch_wrapper /usr/bin/gtk-config &&
install -v -m755 -d /usr/share/doc/gtk+-1.2.10/{html,text} &&
install -v -m644 docs/html/* /usr/share/doc/gtk+-1.2.10/html &&
install -v -m644 docs/text/* /usr/share/doc/gtk+-1.2.10/text

cd ..
rm -rf gtk+-1.2.10{,-64}

作者: tfkdmwmqtr   发布时间: 2007-09-13

不太清楚你想写什麽,如果是重覆 CLFS 手册的内容,可能就没太大的必要了,也许分享一下心得或注意事项会更有价值

作者: d00m3d   发布时间: 2007-09-13

KDE-3.5.7的安装过程

  先少量的选择安装几个多媒体库:

  0501-Libogg
代码:
cd /sources
tar xf /CBLFS/libogg-1.1.3.tar.gz
cp -a libogg-1.1.3{,-64}
# 32bit
cd libogg-1.1.3
CC="gcc ${BUILD32}" ./configure --prefix=/usr &&
make
make install

# 64bit
cd ../libogg-1.1.3-64
CC="gcc ${BUILD64}" ./configure --prefix=/usr --libdir=/usr/lib64 &&
make
make install
cd ..
rm -rf libogg-1.1.3{,-64}
  0502-Libvorbis
代码:
cd /sources
tar xf /CBLFS/libvorbis-1.2.0.tar.bz2
cp -a libvorbis-1.2.0{,-64}
# 32bit
cd libvorbis-1.2.0
CC="gcc ${BUILD32}" PKG_CONFIG_PATH="${PKG_CONFIG_PATH32}" \
./configure --prefix=/usr &&
make
make install

# 64bit
cd ../libvorbis-1.2.0-64
CC="gcc ${BUILD64}" PKG_CONFIG_PATH="${PKG_CONFIG_PATH64}" \
./configure --prefix=/usr --libdir=/usr/lib64 &&
make
make install

cd ..
rm -rf libvorbis-1.2.0{,-64}
  0503-Audio_File
代码:
cd /sources
tar xf /CBLFS/audiofile-0.2.6.tar.gz
cp -a audiofile-0.2.6{,-64}
# 32bit
cd audiofile-0.2.6
CC="gcc ${BUILD32}" ./configure --prefix=/usr &&
make
make install &&
mv -v /usr/bin/audiofile-config{,-32}

# 64bit
cd ../audiofile-0.2.6-64
CC="gcc ${BUILD64}" ./configure --prefix=/usr --libdir=/usr/lib64 &&
make
make install &&
mv -v /usr/bin/audiofile-config{,-64} &&
ln -sfv multiarch_wrapper /usr/bin/audiofile-config

cd ..
rm -rf audiofile-0.2.6{,-64}
  0504-Esound
代码:
cd /sources
tar xf /CBLFS/esound-0.2.38.tar.bz2
cp -a esound-0.2.38{,-64}
# 32bit
cd esound-0.2.38
sed -i 's@doc/esound@&-0.2.38@' configure &&
CC="gcc ${BUILD32}" USE_ARCH=32 PKG_CONFIG_PATH=$PKG_CONFIG_PATH32 \
./configure --prefix=/usr --sysconfdir=/etc &&
make
make install &&
mv -v /usr/bin/esd-config{,-32}

# 64bit
cd ../esound-0.2.38-64
sed -i 's@doc/esound@&-0.2.38@' configure &&
CC="gcc ${BUILD64}" USE_ARCH=64 PKG_CONFIG_PATH=$PKG_CONFIG_PATH64 \
./configure --prefix=/usr --sysconfdir=/etc --libdir=/usr/lib64 &&
make
make install &&
mv -v /usr/bin/esd-config{,-64} &&
ln -sfv multiarch_wrapper /usr/bin/esd-config

# If you have DocBook Utils installed, the HTML documentation should have been built. Install it with the following command:
#cp -v -R docs/html /usr/share/doc/esound-0.2.38

cd ..
rm -rf esound-0.2.38{,-64}
  0505-Libmad
代码:
cd /sources
tar xf /CBLFS/libmad-0.15.1b.tar.gz 
cp -a libmad-0.15.1b{,-64}
# 32bit
cd libmad-0.15.1b
CC="gcc ${BUILD32}" ./configure --prefix=/usr &&
make
make install &&
mv -v /usr/include/mad{,-32}.h

cat > /usr/lib/pkgconfig/mad.pc << "EOF"
prefix=/usr
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
includedir=${prefix}/include

Name: mad
Description: MPEG audio decoder
Requires:
Version: 0.15.1b
Libs: -L${libdir} -lmad
Cflags: -I${includedir}
EOF

# 64bit
cd ../libmad-0.15.1b-64
CC="gcc ${BUILD64}" ./configure --prefix=/usr --libdir=/usr/lib64 &&
make
make install &&
mv -v /usr/include/mad{,-64}.h

cat > /usr/lib64/pkgconfig/mad.pc << "EOF"
prefix=/usr
exec_prefix=${prefix}
libdir=${exec_prefix}/lib64
includedir=${prefix}/include

Name: mad
Description: MPEG audio decoder
Requires:
Version: 0.15.1b
Libs: -L${libdir} -lmad
Cflags: -I${includedir}
EOF

cd ..
rm -rf libmad-0.15.1b{,-64}

# Creating a Stub Header
# 这里选择通用的,详情请看CBLFS手册。
# Creating a Generic Stub Header
cat > /usr/include/mad.h << "EOF"
/* mad.h - Stub Header */
#ifndef __STUB__MAD_H__
#define __STUB__MAD_H__

#if defined(__x86_64__) || \
 defined(__sparc64__) || \
 defined(__arch64__) || \
 defined(__powerpc64__) || \
 defined (__s390x__)
# include "mad-64.h"
#else
# include "mad-32.h"
#endif

#endif /* __STUB__MAD_H__ */
EOF
  vorbis_tools 这个装上后可以将 wmv 转为 ogg 音频文件。lame 可以将 wmv 转为 mp3 。这里暂时不安装,以后需要再装不迟。
  本文不准备安装 KdeMultimedia ,而且事实上它也并不好用,更主要原因是本文的软件太新装上这个KdeMultimedia之后是无声的。我尝试过七、八次了,放弃这个既不华亦不实的巨耗时的臃肿的怪物吧!不安装它没有小喇叭, alsamixer 同样可以调节声音,前面已经提到过了。多媒体播放,只需要mplayer和realplayer就已经足够了。本文中的mplayer同样可以播放一些 real 的音/视频文件,功能不比KdeMultimedia 弱。
  现在先编译 KDE 的三个核心软件包。

作者: tfkdmwmqtr   发布时间: 2007-09-14

xf86-video-i810

作者: VirusCamp   发布时间: 2007-09-14

安装中文 KDE 桌面

  0601-KDE_Pre-Installation_Configuration
代码:
export KDE_PREFIX=/opt/kde-3.5.7
ln -sv kde-3.5.7 /opt/kde

# Create an addition to the Bash Startup Files:
cat > /etc/profile.d/30-kde.sh << "EOF"
# Begin /etc/profile.d/30-kde.sh

export KDE_PREFIX=/opt/kde-3.5.7

export PATH="${PATH}:${KDE_PREFIX}/bin"

export PKG_CONFIG_PATH32="${PKG_CONFIG_PATH32}${PKG_CONFIG_PATH32+:}${KDE_PREFIX}/lib/pkgconfig"
export PKG_CONFIG_PATHN32="${PKG_CONFIG_PATHN32}${PKG_CONFIG_PATHN32+:}${KDE_PREFIX}/lib32/pkgconfig"
export PKG_CONFIG_PATH64="${PKG_CONFIG_PATH64}${PKG_CONFIG_PATH64+:}${KDE_PREFIX}/lib64/pkgconfig"

export XDG_DATA_DIRS="${XDG_DATA_DIRS}${XDG_DATA_DIRS+:}${KDE_PREFIX}/share"
export XDG_CONFIG_DIRS="${XDG_CONFIG_DIRS}${XDG_CONFIG_DIRS+:}/etc/kde/xdg"

# End /etc/profile.d/30-kde.sh
EOF
source /etc/profile

# Add a new entry to /etc/ld.so.conf for the libraries that KDE is going to install:
cat >> /etc/ld.so.conf << "EOF"
# Begin KDE addition to /etc/ld.so.conf

/opt/kde-3.5.7/lib
/opt/kde-3.5.7/lib32
/opt/kde-3.5.7/lib64

# End KDE addition
EOF

ldconfig
  [color]注意:上面的 source /etc/profile 和 ldconfig 这两条命令需要手工输入。[/color]

  0602-ARts
代码:
# Required
# * KDE Pre-Installation Configuration
# * Qt3
# * Glib2
# Recommended
# * libjpeg
# Optional
# * libvorbis
# * ALSA
# * Audio File
# * libmad
# * EsounD
# * NAS
# * MAS
# * JACK


cd /sources
tar xvf /CBLFS/arts-1.5.6.tar.bz2
cp -a arts-1.5.6{,-64}
# 32bit
cd arts-1.5.6
# Compile the package:
CC="gcc ${BUILD32}" CXX="g++ ${BUILD32}" USE_ARCH=32 PKG_CONFIG_PATH="${PKG_CONFIG_PATH32}" \
 ./configure --prefix=$KDE_PREFIX --disable-debug --disable-dependency-tracking \
 --x-libraries=${XORG_PREFIX}/lib --with-qt-libraries=${QTDIR}/lib \
 --enable-libsuffix=none &&
make
# Install the package
make install &&
mv -v ${KDE_PREFIX}/bin/artsc-config{,-32}

# 64bit
cd ../arts-1.5.6-64
patch -Np1 -i /CBLFS/arts-1.5.6-fix_mmx-1.patch
# Compile the package:
CC="gcc ${BUILD64}" CXX="g++ ${BUILD64}" USE_ARCH=64 PKG_CONFIG_PATH="${PKG_CONFIG_PATH64}" \
 ./configure --prefix=$KDE_PREFIX --libdir=${KDE_PREFIX}/lib64 --disable-debug \
 --disable-dependency-tracking --x-libraries=${XORG_PREFIX}/lib64 --with-qt-libraries=${QTDIR}/lib64 \
 --enable-libsuffix=64 &&
make
# Install the package
make install &&
mv -v ${KDE_PREFIX}/bin/artsc-config{,-64} &&
ln -sfv /usr/bin/multiarch_wrapper ${KDE_PREFIX}/bin/artsc-config

cd ..
rm -rf arts-1.5.6{,-64}
  0603-pcre
代码:
cd /sources
tar xvf /CBLFS/pcre-7.1.tar.bz2
cp -a pcre-7.1{,-64}
# 32bit
cd pcre-7.1
# Configure and compile the package:
CC="gcc ${BUILD32}" CXX="g++ ${BUILD32}" ./configure --prefix=/usr --enable-utf8 &&
make
# Install the package:
make install &&
mv -v /usr/bin/pcre-config{,-32}
# If you reinstall Grep after installing PCRE, Grep will get linked against PCRE and may cause problems if /usr is a separate mount point. To avoid this, either pass the option --disable-perl-regexp when executing ./configure for Grep or move libpcre to /lib as follows.
mv -v /usr/lib/libpcre.so.* /lib/ &&
LIBNAME=$(cat libpcre.la | grep dlname | cut -f2 -d"'" | cut -f1 -d" ") &&
ln -sf ../../lib/$LIBNAME /usr/lib/libpcre.so
find /usr/bin/{pcregrep,pcretest,pcre-config} -exec mv -v {} {}-32 \;

# 64bit
cd ../pcre-7.1-x64
# Configure and compile the package:
CC="gcc ${BUILD64}" CXX="g++ ${BUILD64}" ./configure --prefix=/usr --enable-utf8 --libdir=/usr/lib64 &&
make
# Install the package:
make install &&
mv -v /usr/bin/pcre-config{,-64} &&
ln -s multiarch_wrapper /usr/bin/pcre-config
# If you reinstall Grep after installing PCRE, Grep will get linked against PCRE and may cause problems if /usr is a separate mount point. To avoid this, either pass the option --disable-perl-regexp when executing ./configure for Grep or move libpcre to /lib as follows.
mv -v /usr/lib64/libpcre.so.* /lib64/ &&
LIBNAME=$(cat libpcre.la | grep dlname | cut -f2 -d"'" | cut -f1 -d" ") &&
ln -sf ../../lib64/$LIBNAME /usr/lib64/libpcre.so

cd ..
rm -rf pcre-7.1{,-64}
  0604-KdeLibs
代码:
# Required
# * aRts
# * Pcre

# Recommended
# * libjpeg
# * libart_lgpl
# * LibXML2
# * LibXSLT
# * Gamin
# * OpenSSL
# * libidn

# Optional
# * LibTIFF
# * Aspell
# * CUPS
# * OpenLDAP
# * ALSA
# * MIT krb5 or Heimdal
# * OpenEXR
# * JasPer
# * Lua < 5.1
# * mDNSResponder
# * LibThai
# * Hspell
# * Acl
# * Graphviz
# * Doxygen

cd /sources
tar xvf /CBLFS/kdelibs-3.5.7.tar.bz2
cp -a kdelibs-3.5.7{,-64}
# 32bit
cd kdelibs-3.5.7
# Compile the package:
CC="gcc ${BUILD32}" CXX="g++ ${BUILD32}" USE_ARCH=32 PKG_CONFIG_PATH="${PKG_CONFIG_PATH32}" \
 ./configure --prefix=$KDE_PREFIX --sysconfdir=/etc/kde --disable-debug \
 --disable-dependency-tracking --x-libraries=${XORG_PREFIX}/lib \
 --with-qt-libraries=${QTDIR}/lib --enable-libsuffix=none &&
make
# Install the package
make install &&
mv -v ${KDE_PREFIX}/bin/kde-config{,-32}

# 64bit
cd ../kdelibs-3.5.7-64
# Compile the package:
CC="gcc ${BUILD64}" CXX="g++ ${BUILD64}" USE_ARCH=64 PKG_CONFIG_PATH="${PKG_CONFIG_PATH64}" \
 ./configure --prefix=$KDE_PREFIX --sysconfdir=/etc/kde --libdir=${KDE_PREFIX}/lib64 \
 --disable-debug --disable-dependency-tracking --x-libraries=${XORG_PREFIX}/lib64 \
 --with-qt-libraries=${QTDIR}/lib64 --enable-libsuffix=64 &&
make
# Install the package
make install &&
mv -v ${KDE_PREFIX}/bin/kde-config{,-64} &&
ln -sfv /usr/bin/multiarch_wrapper ${KDE_PREFIX}/bin/kde-config
cd ..
rm -rf kde-3.5.7{,-64}
  0605-Kdebase-3.5.7
  如果前面安装了太多的多媒体库,这里的32位的KdeBase-3.5.7将不能通过编译。
代码:
# Required
# * KdeLibs

# Recommended
# * libjpeg
# * libart_lgpl
# * LibXML2
# * OpenSSL
# * JDK

# Optional
# * libusb
# * LibTIFF
# * LessTif
# * Linux-PAM
# * OpenLDAP
# * CyrusSASL
# * Samba
# * HAL
# * MIT krb5 or Heimdal
# * krb4
# * OpenEXR
# * libraw1394
# * lm_sensors
# * mDNSResponder
# * JasPer
# * Graphviz
# * Doxygen
# * D-BUS Qt3

cd /sources
tar xvf /CBLFS/kdebase-3.5.7.tar.bz2
cp -a kdebase-3.5.7{,-64}
# 32bit
cd kdebase-3.5.7
# First, ensure that X11 will be found.
sed -i "s@/usr/X11R6@${XORG_PREFIX}@g" $(grep -lr /usr/X11R6 *)
# Compile the package:
export USE_ARCH=32 &&
CC="gcc ${BUILD32}" CXX="g++ ${BUILD32}" PKG_CONFIG_PATH="${PKG_CONFIG_PATH32}" \
 ./configure --prefix=$KDE_PREFIX --sysconfdir=/etc/kde --disable-debug \
 --disable-dependency-tracking --x-libraries=${XORG_PREFIX}/lib \
 --with-qt-libraries=${QTDIR}/lib --enable-libsuffix=none &&
make
# Install the package
make install &&
unset USE_ARCH

# 64bit
cd ../kdebase-3.5.7-64
# First, ensure that X11 will be found.
sed -i "s@/usr/X11R6@${XORG_PREFIX}@g" $(grep -lr /usr/X11R6 *)
# Compile the package:
export USE_ARCH=64 &&
CC="gcc ${BUILD64}" CXX="g++ ${BUILD64}" PKG_CONFIG_PATH="${PKG_CONFIG_PATH64}" \
 ./configure --prefix=$KDE_PREFIX --sysconfdir=/etc/kde --libdir=${KDE_PREFIX}/lib64 \
 --disable-debug --disable-dependency-tracking --x-libraries=${XORG_PREFIX}/lib64 \
 --with-qt-libraries=${QTDIR}/lib64 --enable-libsuffix=64 &&
make
# Install the package
make install &&
unset USE_ARCH

cd ..
rm -rf kdebase-3.5.7{,-64}
  0606-wqy
  文泉驿,安装的方法需要看README,或者解包后里面有 INSTALL 文件。这里安装 PCF 的。
代码:
mkdir -v /usr/share/fonts/wenquanyi
tar -zxvpf /CBLFS/wqy-bitmapfont-pcf-0.8.1-7.tar.gz -C /usr/share/fonts/wenquanyi
cp -a /usr/share/fonts/wenquanyi/wqy-bitmapfont/85-wqy-bitmapsong.conf /etc/fonts/conf.d/
  0607-KDE-i8n-64bit
  这里选择安装zh_CN的,台湾的朋友安装 zh_TW 的。这个,只需要安装64位就可以了。从现在开始,编译软件首先考虑64位,如果64位不通过或者有其它的软件包需要这个软件包的32位库才编译32位的。
代码:
cd /sources
tar xvf /CBLFS/kde-i18n-zh_CN-3.5.7.tar.bz2
# 64bit
cd kde-i18n-zh_CN-3.5.7
# Compile the package:
export USE_ARCH=64 &&
CC="gcc ${BUILD64}" CXX="g++ ${BUILD64}" PKG_CONFIG_PATH="${PKG_CONFIG_PATH64}" \
 ./configure --prefix=$KDE_PREFIX --libdir=${KDE_PREFIX}/lib64 \
 --x-libraries=${XORG_PREFIX}/lib64 \
 --with-qt-libraries=${QTDIR}/lib64 --enable-libsuffix=64 &&
make
# Install the package
make install &&
unset USE_ARCH

cd /sources
#rm -rf kde-i18n-zh_CN-3.5.7{,-64}

cat > /etc/profile.d/05-i18n.sh << "EOF"
# Begin /etc/profile.d/05-i18n.sh

export LANG=zh_CN.UTF-8
export G_FILENAME_ENCODING=@locale
 
# End /etc/profile.d/05-i18n.sh
EOF
source /etc/profile
  注意:上面的 source /etc/profile 同样需要手工输入。

  安装了这些包之后,就可以启动中文的 KDE 了。CBLFS手册没有讲如何启动 KDE ,这里按 BLFS 手册的方法来做:

  0608-KDE-config
代码:
echo "exec startkde" > ~/.xinitrc
echo "exec dbus-launch --exit-with-session startkde" >> ~/.xinitrc
update-desktop-database
ldconfig
startx
  0609-SCIM-64bit
  中文输入法
代码:
# 64bit
cd /sources
tar xvf /CBLFS/scim-1.4.6.tar.gz
cd scim-1.4.6
# 64bit
CC="gcc ${BUILD64}" CXX="g++ ${BUILD64}" USE_ARCH=64 PKG_CONFIG_PATH="${PKG_CONFIG_PATH64}" \
 ./configure --prefix=/usr --sysconfdir=/etc/scim --libdir=/usr/lib64
make
make install
cd ..

# scim-tables-0.5.7.tar.gz
tar xvf /CBLFS/scim-tables-0.5.7.tar.gz
cd scim-tables-0.5.7
CC="gcc ${BUILD64}" CXX="g++ ${BUILD64}" USE_ARCH=64 PKG_CONFIG_PATH="${PKG_CONFIG_PATH64}" \
 ./configure --prefix=/usr --sysconfdir=/etc/scim --libdir=/usr/lib64
make
make install
cd ..

# scim-pinyin-0.5.91.tar.gz
tar xvf /CBLFS/scim-pinyin-0.5.91.tar.gz
cd scim-pinyin-0.5.91
CC="gcc ${BUILD64}" CXX="g++ ${BUILD64}" USE_ARCH=64 PKG_CONFIG_PATH="${PKG_CONFIG_PATH64}" \
 ./configure --prefix=/usr --sysconfdir=/etc/scim --libdir=/usr/lib64
make
make install
cd ..

# test
scim &
  0610-KdeGraphics-64bit
  KDE的图形图像处理 ( 含 屏幕打印键截屏功能 )
代码:
cd /sources
tar xvf /CBLFS/kdegraphics-3.5.7.tar.bz2
# 64bit
export USE_ARCH=64 &&
patch -Np1 -i /CBLFS/kdegraphics-3.5.7-exr-1.patch &&
CC="gcc ${BUILD64}" CXX="g++ ${BUILD64}" PKG_CONFIG_PATH="${PKG_CONFIG_PATH64}" \
 ./configure --prefix=$KDE_PREFIX --libdir=${KDE_PREFIX}/lib64 \
 --disable-debug --disable-dependency-tracking --x-libraries=${XORG_PREFIX}/lib64 \
 --with-qt-libraries=${QTDIR}/lib64 --enable-libsuffix=64 &&
make
make install &&
unset USE_ARCH

cd /sources
rm -rf kdegraphics-3.5.7

给KDE换了两个 .ogg 的文件,“很美的竖琴的开关机声音 美妙天籁之音”。
是用oggenc命令转换的,我的笔记本声卡不好,感觉不出转换后的效果和原声 .wav 有何差别。
文件大于 200 K 了。有兴趣可以自己做一下:

rar x sq.rar
按 A 键,回车,按Q 键退出。
然后
oggenc xxx.wav

把转换后的 .ogg 文件复制到 $KDE_PREFIX/share/sounds 目录下的 KDE_Startup_1.ogg 和 KDE_Logout_3.ogg 就可以了。注意原先的文件最好是先改名。

按照国际贯例,传一张图片:

作者: tfkdmwmqtr   发布时间: 2007-09-14

安装几个图形环境中的常用软件

安装 firefox-2.0.07 网页浏览器
这里,如果 只安装 firefox 64bit ,这几个依赖的软件包的也只需要安装 64 位的。但是,用不了 32 位的插件。CBLFS手册中又有说明,如果想只安装32位的,仍然是需要再编译一次64bit的。
有些遗憾的是,我至今仍未用上 flash-player9 的 Plugin 。按 CBLFS 上面方法也没做对,不知应该怪我笨,还是怪那盲文英语太懂了?

  0701-LibIDL
代码:
cd /sources
tar xf /CBLFS/libIDL-0.8.8.tar.bz2
cp -a libIDL-0.8.8{,-64}
# 32bit
cd libIDL-0.8.8
CC="gcc ${BUILD32}" CXX="g++ ${BUILD32}" PKG_CONFIG_PATH="${PKG_CONFIG_PATH32}" \
./configure --prefix=/usr &&
make
make install &&
mv -v /usr/bin/libIDL-config-2{,-32}

# 64bit
cd ../libIDL-0.8.8-64
CC="gcc ${BUILD64}" CXX="g++ ${BUILD64}" PKG_CONFIG_PATH="${PKG_CONFIG_PATH64}" \
./configure --prefix=/usr --libdir=/usr/lib64 &&
make
make install &&
mv -v /usr/bin/libIDL-config-2{,-64} &&
ln -sfv multiarch_wrapper /usr/bin/libIDL-config-2

# Documentation
# If you have TeTeX installed and wold like to build the documentation, Run the following command:
#make pdf &&
#make ps &&
#make html &&
#makeinfo --plaintext libIDL2.texi >libIDL2.txt
#install -v -m755 -d /usr/share/doc/libIDL-0.8.8/html &&
#install -v -m644 libIDL2.{pdf,dvi,ps,txt} README \
# /usr/share/doc/libIDL-0.8.8 &&
#install -v -m644 libIDL2.html/* /usr/share/doc/libIDL-0.8.8/html
cd ..
rm -rf libIDL-0.8.8{,-64}
  0702-Zip
代码:
cd /sources
tar xf /CBLFS/zip232.tar.gz
cp -a zip-2.32{,-64}
# 32bit
cd zip-2.32
sed -i -e 's@$(INSTALL) man/zip.1@$(INSTALL_PROGRAM) man/zip.1@' \
unix/Makefile &&
make prefix=/usr CC="gcc ${BUILD32}" -f unix/Makefile generic
make prefix=/usr -f unix/Makefile install

# 64bit
cd ../zip-2.32-64
sed -i -e 's@$(INSTALL) man/zip.1@$(INSTALL_PROGRAM) man/zip.1@' \
unix/Makefile &&
make prefix=/usr CC="gcc ${BUILD64}" -f unix/Makefile generic
make prefix=/usr -f unix/Makefile install

cd ..
rm -rf zip-2.32{,-64}
  0703-firefox-2.0.0.7
代码:
cd /sources
tar xf /CBLFS/firefox-2.0.0.7-source.tar.bz2 
cd mozilla
# 32bit
#Creating a .mozconfig
cat > .mozconfig << "EOF"
. $topsrcdir/browser/config/mozconfig
mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/obj-@CONFIG_GUESS@

ac_cv_visibility_pragma=no

ac_add_options --prefix=/opt/firefox-2.0.0.7

ac_add_options --with-system-nss
ac_add_options --with-system-nspr

ac_add_options --with-system-zlib
ac_add_options --with-system-png
ac_add_options --with-system-jpeg
ac_add_options --enable-system-cairo

ac_add_options --enable-canvas
ac_add_options --enable-svg

ac_add_options --enable-strip
ac_add_options --disable-tests 
ac_add_options --disable-accessibility
ac_add_options --disable-installer 
ac_add_options --enable-official-branding 
EOF

#If you would like dual monitor support, append your your .mozconfig with the following:
cat >> .mozconfig << "EOF"
ac_add_options --enable-xinerama
EOF

#If you have OpenLDAP installed and would like to build against it. This is required to build Open Office. Append your .mozconfig with the following:
#cat >> .mozconfig << "EOF"
#ac_add_options --enable-ldap
#EOF

#If you would like to render fonts with Pango, append your your .mozconfig with the following. This can significantly slow font rendering.
cat >> .mozconfig << "EOF"
ac_add_options --enable-pango
EOF

# 32bit
#Use the following command to append your .mozconfig with 32bit specific flags:
cat >> .mozconfig << EOF
export CC="gcc ${BUILD32}"
export CXX="g++ ${BUILD32}"
export PKG_CONFIG_PATH="${PKG_CONFIG_PATH32}"
export USE_ARCH=32
ac_add_options --host=$CLFS_TARGET32
ac_add_options --build=$CLFS_TARGET32
mk_add_options CONFIG_GUESS=$CLFS_TARGET32
EOF

sed -i "s:@MOZ_GTK2_LIBS@:& -L${XORG_PREFIX}/lib -lX11 -lXrender:g" config/autoconf.mk.in

make -f client.mk OS_TEST=x86 build
make -f client.mk OS_TEST=x86 install

mv -v /opt/firefox-2.0.0.7/bin/firefox-config{,-32} &&
mv -v /opt/firefox-2.0.0.7/bin/firefox{,-32} && 
ln -sfv /usr/bin/multiarch_wrapper /opt/firefox-2.0.0.7/bin/firefox-config


#64bit
mkdir /sources/mozilla-64
cd /sources/mozilla-64
tar xf /CBLFS/firefox-2.0.0.7-source.tar.bz2
cd mozilla

#Creating a .mozconfig
cat > .mozconfig << "EOF"
. $topsrcdir/browser/config/mozconfig
mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/obj-@CONFIG_GUESS@

ac_cv_visibility_pragma=no

ac_add_options --prefix=/opt/firefox-2.0.0.7

ac_add_options --with-system-nss
ac_add_options --with-system-nspr

ac_add_options --with-system-zlib
ac_add_options --with-system-png
ac_add_options --with-system-jpeg
ac_add_options --enable-system-cairo

ac_add_options --enable-canvas
ac_add_options --enable-svg

ac_add_options --enable-strip
ac_add_options --disable-tests 
ac_add_options --disable-accessibility
ac_add_options --disable-installer 
ac_add_options --enable-official-branding 
EOF

#If you would like dual monitor support, append your your .mozconfig with the following:
cat >> .mozconfig << "EOF"
ac_add_options --enable-xinerama
EOF

#If you have OpenLDAP installed and would like to build against it. This is required to build Open Office. Append your .mozconfig with the following:
#cat >> .mozconfig << "EOF"
#ac_add_options --enable-ldap
#EOF

#If you would like to render fonts with Pango, append your your .mozconfig with the following. This can significantly slow font rendering.
cat >> .mozconfig << "EOF"
ac_add_options --enable-pango
EOF

#Use the following command to append your .mozconfig with 64bit specific flags:
cat >> .mozconfig << EOF
ac_add_options --libdir=/opt/firefox-2.0.0.7/lib64
export CC="gcc ${BUILD64}"
export CXX="g++ ${BUILD64}"
export PKG_CONFIG_PATH="${PKG_CONFIG_PATH64}"
export USE_ARCH=64
EOF

sed -i "s:@MOZ_GTK2_LIBS@:& -L${XORG_PREFIX}/lib64 -lX11 -lXrender:g" config/autoconf.mk.in

make -f client.mk build
make -f client.mk install &&
mv -v /opt/firefox-2.0.0.7/bin/firefox-config{,-64} &&
ln -sfv /usr/bin/multiarch_wrapper /opt/firefox-2.0.0.7/bin/firefox-config

# Bash Startup Files 
#If you're using the Bash Startup Files create an addition for firefox with the following commands, otherwise make sure the enviornment variables are set in your profile:
cat > /etc/profile.d/50-firefox.sh << "EOF"
# Begin /etc/profile.d/50-firefox.sh

export PATH="${PATH}:/opt/firefox-2.0.0.7/bin"
export PKG_CONFIG_PATH32="${PKG_CONFIG_PATH32}${PKG_CONFIG_PATH32+:}/opt/firefox-2.0.0.7/lib/pkgconfig"
export PKG_CONFIG_PATHN32="${PKG_CONFIG_PATHN32}${PKG_CONFIG_PATHN32+:}/opt/firefox-2.0.0.7/lib32/pkgconfig"
export PKG_CONFIG_PATH64="${PKG_CONFIG_PATH64}${PKG_CONFIG_PATH64+:}/opt/firefox-2.0.0.7/lib64/pkgconfig"

# End /etc/profile.d/50-firefox.sh
EOF

#Creating the Desktop File
cat > /usr/share/applications/firefox.desktop << "EOF"
[Desktop Entry]
Encoding=UTF-8
Name=Mozilla Firefox Browser
Comment=Lightweight Browser Based on Mozilla
Exec=firefox
Icon=firefox.png
Terminal=false
Type=Application
MimeType=text/html;
Categories=Application;Network;
EOF

#cp -a /CBLFS/firefox-64.png /usr/share/pixmaps/firefox.png

#Grab the Firefox pixmap from http://cross-lfs.org/~jciccone/firefox.png and put it in /usr/share/pixmaps. If you built both a 32-bit and 64-bit version of Firefox, you can grab unofficial Firefox pixmaps that will help you keep track of which one you're launching from http://cross-lfs.org/~arowland/firefox.png for 32-bit and http://cross-lfs.org/~arowland/firefox-64.png for the 64-bit version. These are useful for launchers on your panel.
cd /sources
#test
firefox
# rm -rf mozilla{,-64}
  0704-Flash_Player
[code]

作者: tfkdmwmqtr   发布时间: 2007-09-14

貌似系统是由 gcc-4.2.1 建立的,编译 Xorg 时改用 gcc-4.1.2,对不?

不知道刚发行的 Xorg-7.3 能否用 gcc-4.2.1 通过编译 :ask

作者: d00m3d   发布时间: 2007-09-14

引用:
作者: d00m3d
不知道刚发行的 Xorg-7.3 能否用 gcc-4.2.1 通过编译 :ask
Debian 里 Xorg-7.3 刚刚进入 experimental ,应该就是 gcc-4.2.1 编译的。只不过 Debian 里的 gcc 是新的 snapshot ,patch 了好些东西

作者: manphiz   发布时间: 2007-09-14

引用:
作者: d00m3d
貌似系统是由 gcc-4.2.1 建立的,编译 Xorg 时改用 gcc-4.1.2,对不?

不知道刚发行的 Xorg-7.3 能否用 gcc-4.2.1 通过编译 :ask
是这样的, GCC-4.2.1 编译XSERVER 直接就通过了,因为我的笔记本是 1GB内存+2GB的SWAP ..
当时,我是从台式机 SSH 登录到笔记本系统中做的. FREE看了一下,内存占用很高,故猜测以前用台式机用GCC-4.2无法通过XSERVER是因为物理内存只有512M的原因.

作者: tfkdmwmqtr   发布时间: 2007-09-14

我发现一个问题:

我的酷睿2双核处理器. 在编译的时候只占用了50%左右的CPU资源,总是跑不满, 有什么办法没?

作者: tfkdmwmqtr   发布时间: 2007-09-14

楼主用的马甲?

作者: youbest   发布时间: 2007-09-14

引用:
作者: youbest
楼主用的马甲?
还是让您认出来了。以前的帐号不想用了,现在是重新开始。

作者: tfkdmwmqtr   发布时间: 2007-09-14

刷新率上不去。
显卡驱动也不知道上哪儿去找。颜色惨白……

作者: tfkdmwmqtr   发布时间: 2007-09-14

双核用 make -j3 吗?

作者: tfkdmwmqtr   发布时间: 2007-09-14

引用:
作者: tfkdmwmqtr
刷新率上不去。
显卡驱动也不知道上哪儿去找。颜色惨白……
lspci 并没有提供显卡部分的详细情况,但结合南桥 ICH8 和酷睿2,你的显卡应该是 GMA 950,好像有个 Intel 915 的可以用

作者: CHII   发布时间: 2007-09-14

用64位 LFS LiveCD 做 pure64 系统,然后 chroot 弄32位系统,这样弄比 multilib64 哪个更好呢?

作者: CHII   发布时间: 2007-09-14

引用:
作者: CHII
用64位 LFS LiveCD 做 pure64 系统,然后 chroot 弄32位系统,这样弄比 multilib64 哪个更好呢?
multilib64会更顺畅一些。
做了Pure64 ,又回头再弄一次32bit ,样做 会增加出错的机率,而已心理上也无法接受,还不如从头开始。

作者: tfkdmwmqtr   发布时间: 2007-09-14

引用:
作者: tfkdmwmqtr
双核用 make -j3 吗?
一般可以用 cpu 数乘 2 再加 1,也就是说双核用 make -j5 无妨,但有少数软件是不能用并行编译的

作者: d00m3d   发布时间: 2007-09-15

引用:
作者: tfkdmwmqtr
还是让您认出来了。以前的帐号不想用了,现在是重新开始。
这里为何常有高人用马甲 :ask

作者: d00m3d   发布时间: 2007-09-15

楼主啊,先吧你的CLFS过程发上来吧,我正在做CLFS遇到好多问题,想看看你是怎么做的

作者: echo   发布时间: 2007-09-15

引用:
作者: echo
楼主啊,先吧你的CLFS过程发上来吧,我正在做CLFS遇到好多问题,想看看你是怎么做的
我当时用的是 20070902 的手册,当时忘了下载手册。所以有一些细节的地方我记不清楚。
20070903手册更新过了。发现 Udev 115 64bit 无法通过,一直到现在也没能解决这个问题。 没有 Udev 估计就啥事也不必做了,启动都找不到设备的。我正在想办法找资料做这个。
如果你有需要CLFS手册,我这里有 20070805 的 x86_64 的。打包后2M左右,我给出下载地址,或者发送给你。但这上面用的是 Udev 105 !
每个的 SVN 的 Udev 的编译方法都不尽想同,我仍然想用 Udev 115 。
当然,最稳定的版本,最能够方便以后安装软件少出错的版本是 1.0.0 的手册,不是 svn 版。如果想安安心心的用,就用它了。想在它的基础上升级也是可以的。1.0.0的,我还没有做过。

作者: tfkdmwmqtr   发布时间: 2007-09-15

1.0.0 已过时了。。。!

作者: d00m3d   发布时间: 2007-09-15

alias make="make -j5"
之后,的确发现在 make install 的时候偶尔会提示 错误。
所以,还是老老实实在在 make 的时候,加上 -j5 。
版主啊,我在网上找到的都说是 -j3 。您有没有这方面的资料?

作者: tfkdmwmqtr   发布时间: 2007-09-15

引用:
alias make="make -j5"
之后,的确发现在 make install 的时候偶尔会提示 错误。
You can't do that. Otherwise, when you use make install, it means "make -j5 install"!
引用:
所以,还是老老实实在在 make 的时候,加上 -j5 。
That what you should do.
引用:
版主啊,我在网上找到的都说是 -j3 。您有没有这方面的资料?
Don't worry, -j5 for 2 CPUs (or dual core CPU) is just fine.

作者: d00m3d   发布时间: 2007-09-15

引用:
作者: d00m3d
You can't do that. Otherwise, when you use make install, it means "make -j5 install"!
That what you should do.
Don't worry, -j5 for 2 CPUs (or dual core CPU) is just fine.
这下我放心了。
感谢回复。

作者: tfkdmwmqtr   发布时间: 2007-09-15

tfkdmwmqtr 是 huohuliaisili 的马甲者乎?

作者: d00m3d   发布时间: 2007-09-20

这个帖子还没有有必要写下去呢?
嗯 ?
虽说没有技术含量,但多少人视之为畏途,而达者寥寥……
支持写的 吼 一声,我一定继续完善。
要是真没有人看,那我可能就不写了。其实我的时间也不多。
半个月时间 CLFS 做了大约四次,重编译内核若干次, Xorg7.2做对了两次做错四五次, qt3做了三、四次,KDE重编译了三、四次,Vbox 就快要成功了。一路上遇到了许多大小问题,解决了一些,还有一些没有解决。总的来说, x86_64 还是很强的。可以说,把它搞定了,对自己各方面都有提高。

作者: tfkdmwmqtr   发布时间: 2007-09-21

引用:
作者: tfkdmwmqtr
这个帖子还没有有必要写下去呢?
嗯 ?
兄弟何出此言?
引用:
作者: tfkdmwmqtr
虽说没有技术含量,但多少人视之为畏途,而达者寥寥……
支持写的 吼 一声,我一定继续完善。
要是真没有人看,那我可能就不写了。其实我的时间也不多。
汝曾说是完美主义者,这麽快就放弃了?

毕竟 CLFS x86_64 Multilib + CBLFS 并非容易,其实我就是等待兄弟写完,必以精华封上!

作者: d00m3d   发布时间: 2007-09-21

噢 !?
精华的诱惑? 好的,一定会注意帖子的质量。

作者: tfkdmwmqtr   发布时间: 2007-09-21

加油啊!!!

作者: d00m3d   发布时间: 2007-09-21

引用:
作者: tfkdmwmqtr
这个帖子还没有有必要写下去呢?
嗯 ?
虽说没有技术含量,但多少人视之为畏途,而达者寥寥……
支持写的 吼 一声,我一定继续完善。
要是真没有人看,那我可能就不写了。其实我的时间也不多。
半个月时间 CLFS 做了大约四次,重编译内核若干次, Xorg7.2做对了两次做错四五次, qt3做了三、四次,KDE重编译了三、四次,Vbox 就快要成功了。一路上遇到了许多大小问题,解决了一些,还有一些没有解决。总的来说, x86_64 还是很强的。可以说,把它搞定了,对自己各方面都有提高。
赶快写啊,我还等着看xorg7.3的编译过程呢,这两天做xorg7.3,问题一萝筐啊

作者: echo   发布时间: 2007-09-21

xorg-7.3 暂时不会去用。
我现在更注重稳定。今天在台式机上再从头做一次,看一下是不是机器的问题,可能花的时间很长。然后,再专门花时间来总结一下。
如果你需要 Xorg-7.2 的过程,我可以先发上来。 xorg-7.3 暂时没有试过,CBLFS手册上也没有写。当然,做成了也可以写到 CBLFS 上去。 wiki 上也有不少错误,需要自己去发现和解决。

作者: tfkdmwmqtr   发布时间: 2007-09-21

引用:
作者: d00m3d
加油啊!!!
感谢鼓励,感谢加油。
一定努力写好文章,一定努力完善自己。

作者: tfkdmwmqtr   发布时间: 2007-09-21

引用:
作者: tfkdmwmqtr
xorg-7.3 暂时不会去用。
我现在更注重稳定。今天在台式机上再从头做一次,看一下是不是机器的问题,可能花的时间很长。然后,再专门花时间来总结一下。
如果你需要 Xorg-7.2 的过程,我可以先发上来。 xorg-7.3 暂时没有试过,CBLFS手册上也没有写。当然,做成了也可以写到 CBLFS 上去。 wiki 上也有不少错误,需要自己去发现和解决。
哪就先发个xorg7.2的安装脚本上来吧。wiki的问题确实很多,我做的gpm只能用32位的,64的老是需要重启

作者: echo   发布时间: 2007-09-21

引用:
作者: echo
哪就先发个xorg7.2的安装脚本上来吧。wiki的问题确实很多,我做的gpm只能用32位的,64的老是需要重启
安装脚本,我当然有。虽然,我不会写脚本。
如果你想先用上图形环境,再去研究其它的细节,你可以 PM 我,我可以把安装脚本发给你。虽然,还有一些小问题。用上中文 KDE 是可以的啦,多媒体播放也可以。
由于这里要写这安装过程,所以,会慢许多,而且,我现正在用台式机从头做 CLFS-SVN-x86_64 。

作者: tfkdmwmqtr   发布时间: 2007-09-21

论坛可能还有问题,怎么我第4楼的帖子,点击编译,看到是一片空白呢?我都不敢点保存更改了。
短的编译还是没问题。

作者: tfkdmwmqtr   发布时间: 2007-09-22

我没有天天去看帖子是否完工,若然已写好,请兄弟扬声,否则不知道是否己完成

作者: d00m3d   发布时间: 2007-09-24

引用:
作者: d00m3d
我没有天天去看帖子是否完工,若然已写好,请兄弟扬声,否则不知道是否己完成
多谢挂念!
这三天把反复重试多次,在台式机和笔记本上同时做了一次。旷日持久,劳心伤神,终于认定是软件版本太新的问题。实非人之过也,还请体晾……
我今天写一下吧,写完定于第一时间通知您。

作者: tfkdmwmqtr   发布时间: 2007-09-25

热门下载

更多