libgnome 套件實例

  1. 下載 SRPM 套件
    [dywang@dywH ~]$ cd rpmbuild
    [dywang@dywH rpmbuild]$ wget ftp://ftp.pbone.net/mirror/vault.centos.org\
    /6.0/os/SRPMS/Packages/libgnome-2.28.0-11.el6.src.rpm
    
  2. 安裝 SRPM 套件
    [dywang@dywH rpmbuild]$ rpm -ivh libgnome-2.28.0-11.el6.src.rpm
    
  3. 至原始碼目錄中查看檔案。
    [dywang@dywH SOURCES]$ ls libgnome-*
    libgnome-2.11.1-scoreloc.patch
    libgnome-2.19.1-default-settings.patch
    libgnome-2.22.0-default-sound-effects.patch
    libgnome-2.24.1-default-noblink.patch
    libgnome-2.28.0.tar.bz2
    libgnome-2.7.2-default-cursor.patch
    libgnome-2.8.0-default-browser.patch
    libgnome-translations.patch
    
  4. 解壓縮原始碼 tarball,產生 libgnome-2.28.0 目錄,存放原始碼。
    [dywang@dywH SOURCES]$ tar jxvf libgnome-2.28.0.tar.bz2
    

  5. 至 libgnome-2.28.0 目錄,查看檔案。
    [dywang@dywH SOURCES]$ ls libgnome-2.28.0
    aclocal.m4    configure     gtk-doc.make     Makefile.am    po
    AUTHORS       configure.in  install-sh       Makefile.in    README
    ChangeLog     COPYING.LIB   libgnome         missing        schemas
    config.guess  depcomp       libgnome-zip.in  mkinstalldirs
    config.h.in   doc           ltmain.sh        monikers
    config.sub    gnome-data    MAINTAINERS      NEWS
    

  6. 修改 RPM spec 規格檔,版本加入 dyw。
    [dywang@dywH SOURCES]$ vim ../SPECS/libgnome.spec 
    [dywang@dywH SOURCES]$ grep dyw ../SPECS/libgnome.spec
    Release: 11%{?dist}.dyw
    
  7. 修改預設 gnome 佈景主題為 Clearlooks。
    [dywang@dywH SOURCES]$ vim libgnome-2.19.1-default-settings.patch
    [dywang@dywH SOURCES]$ grep Clearlooks libgnome-2.19.1-default-settings.patch -B6
    +++ libgnome-2.19.1/schemas/desktop_gnome_interface.schemas.in.in	2007-08-11 23:55:43.000000000 -0400
    @@ -130,7 +130,7 @@
           <applyto>/desktop/gnome/interface/icon_theme</applyto>
           <owner>gnome</owner>
           <type>string</type>
    -      <default>gnome</default>
    +      <default>Clearlooks</default>
    
  8. 重新建立 RPM 二進位檔,出現相依套件問題。
    [dywang@dywH SOURCES]$ rpmbuild -ba --clean --target=$(uname -m) ../SPECS/libgnome.spec
    Building target platforms: x86_64
    Building for target x86_64
    error: Failed build dependencies:
    	libbonobo-devel >= 2.13.0 is needed by libgnome-2.28.0-11.el6.dyw.x86_64
    	GConf2-devel >= 2.14 is needed by libgnome-2.28.0-11.el6.dyw.x86_64
    	gnome-vfs2-devel >= 2.5.3 is needed by libgnome-2.28.0-11.el6.dyw.x86_64
    	ORBit2-devel >= 2.5.1 is needed by libgnome-2.28.0-11.el6.dyw.x86_64
    	libxslt-devel >= 1.0.19 is needed by libgnome-2.28.0-11.el6.dyw.x86_64
    	intltool is needed by libgnome-2.28.0-11.el6.dyw.x86_64
    	popt-devel is needed by libgnome-2.28.0-11.el6.dyw.x86_64
    
  9. 先安裝相依套件。
    [dywang@dywH SOURCES]$ sudo yum install libbonobo-devel GConf2-devel gnome-vfs2-devel ORBit2-devel libxslt-devel intltool popt-devel
    
  10. 再重新建立 RPM 二進位檔,出現相依套件問題。
    [dywang@dywH SOURCES]$ rpmbuild -ba --clean --target=$(uname -m) ../SPECS/libgnome.spec
    
  11. 查看建立的 RPM 二進位檔。
    [dywang@dywH SOURCES]$ ls ../RPMS/x86_64/libgnome-* ../SRPMS/libgnome-*
    ../RPMS/x86_64/libgnome-2.28.0-11.el6.dyw.x86_64.rpm
    ../RPMS/x86_64/libgnome-devel-2.28.0-11.el6.dyw.x86_64.rpm
    ../SRPMS/libgnome-2.28.0-11.el6.dyw.src.rpm