  RPM HOWTO
  Donnie Barnes,djb@redhat.com
  V2.0, April 8, 1997
  _c [ kanda@cmm.is.tohoku.ac.jp
  1997N97

  ҂FgARPM ̎ڂm肽߂  HOWTO 󂵂
  ŁA RPM ɂďS҂łB̂ƂlĂǂ݂B܂A
  ۂ RPM pbP[W쐬ɂAÍ a
  <furutaka@Flux.tokai.jaeri.go.jp>ƐΉ
  <ishioka@ppp01.infoPepper.or.jp>ɂďꂽ RPM-BUILD-HOWTO
  ǂ݂ɂȂ鎖߂܂BRp  <yamagata@jwu.ac.jp>񂪖|
  ꂽÕo[WQlɂĒ܂B|̊ԈႢ͎wE
  ƍKłB
  ______________________________________________________________________

  ڎ

  1. ͂߂
  2. T
  3. ʓIȏ
     3.1 RPM ̓
     3.2 RPM ̂߂ɕKvȂ

  4. RPM ̎gp
  5.  RPM Ŏۂɂł邱
  6. RPM pbP[W̍쐬
     6.1 rpmrc t@C
     6.2 spec t@C
     6.3 wb_
     6.4 Prep
     6.5 Build
     6.6 Install
     6.7 pre ,post CXg[ / ACXg[ XNvg (C)
     6.8 Files
     6.9 쐬
        6.9.1 \[XfBNg c[
        6.9.2 쐬eXg
        6.9.3 t@CXg̐
        6.9.4 RPM ppbP[W̍쐬
     6.10 eXg
     6.11 V쐬 RPM pbP[WǂΗǂB
     6.12 What Now?

  7. }` A[LeN`p RPM pbP[W̍쐬
     7.1 Tv spec t@C
     7.2 optflags
     7.3 }N
     7.4 pbP[W A[LeN`O
     7.5 Ō

  8. 쌠m

  ______________________________________________________________________

  1.  ͂߂

  RPM Ƃ́ARed Hat Package Manager ̂ƂłBO Red Hat Ƃ
  ܂܂Ă܂ANgI[vpbP[WOVXełA
  V\tgEFÃ\[XR[hAȒPɍč\zł\[XR[h`
  AȒPɃCXg[ƃgbLOsȂoCi`ŃpbP[
  W邱Ƃł܂BRPM ́ASpbP[WƁAɊ܂܂St@
  C̃f[^x[Xێ܂B̃f[^x[X̓pbP[WɂĂ
  ƍƃt@C ()pbP[WɂĂ̏ɑ΂₢킹
  Ɏg܂B Red Hat Software ́Â׃_[ RPM 𒲂ׂĎ
  ̔zzpbP[WɎgƂサĂ܂BRPM ͔ɑK͂ȃVX
  ê߂̊b񋟂AƂĂ_Ŏg₷̂ɂȂĂA
  SɃI[vɗp\łB GPL ɊÂAgp̎gpyєzz
  Ă܂BoO|[gƃoOtBbNX͊ӂ邱Ƃł
  B

  RPM Ɋւ芮SȕƂāAEd Bailey uMaximum RPMv
  \łB̖{ www.redhat.com  <http://www.redhat.com> _E
  [h͍wł܂B

  2.  T

  ͂߂ɁARPM ̔wiɂNŵɂďqׂĂ炢܂B
  ̐݌vڕW ``'' \[X̎gp̗]ncƂłBRPP (RPM
  ȂȑOɎpbP[ŴɗpĂĂVXe) 
  ́Ã\[XpbP[W ``nbNꂽ'' \[XƂɍ쐬
  Ă܂B_Iɂ́AN\[X RPP CXg[ł薳
  make ł܂B\[X̓IWiȂ̂ł͂ȂȂĂ܂܂
  A쐬邽߂ɉύXꂽ̂yĂ܂łB
  \[X͕ʂɂă_E[hȂ΂ȂȂ܂łBRPM 
  ́ARpCpb`ƋɌ̃\[Xɂ邱ƂɂȂ
  B͂傫ȃAhoe[Wƌ܂BȂȂ炢̗R
  ܂B́AvO̐Vo[WoƂARHL
  ŃRpCē邽߂ɃXNb`͂߂Kv͂܂B
  Ƃ邱ƂKvȂƂ𒲂ׂ邽߂Ƀpb`邱Ƃł
  BSẴRpC̎̃ftHg̕@ŊȒPɔFł܂B

  RPM ͂܂͂Ȗ₢킹̃IvV悤ɐ݌vĂ܂B
  pbP[W͊Yt@C߂̑Sf[^x[XʂČ
  Ƃł܂B܂At@Cǂ̃pbP[WɑĂĂꂪǂ
  ꂽ̂ȒPɌo܂BRPM t@C͂ꎩgkꂽA[
  JCułBX̃pbP[WȒPɂf₢킹邱Ƃ
  ł܂BȂȂAʂ̃oCiwb_ȂЂƂmK
  v̂邱ƑSĂ񈳏ǩ`ŃpbP[WɕtĂ邩łB
  ͍Ȗ₢킹܂B

  ̋͂ȓ́ApbP[W̏ƍ\͂łBpbP[Ŵ߂
  dvȃt@CĂ܂SzȂAƍĂ݂ĂB
  ُ̈ʍł傤B̓_ŁAKvȂ΃pbP[WăC
  Xg[ł܂BĂǂȐݒt@Clɕۑ
  B

   RPMɑ̃ACfBAƃRZvg܂߂Ă BOGUS
  fBXgr[V̕XɊӂ܂BRPM ͊S Red Hat
  Software ɂď܂A̓ BOGUS (PM  PMS) ɂ
  ꂽR[hɂĂ܂B

  3.  ʓIȏ

  3.1.  RPM ̓

  RPM 肷邽߂ɂƂ悢@́ARed Hat Linux CXg[
  邱ƂłBȂ]܂ȂȂ΁AłRPM 肵g
  Ƃł܂BRPM  ftp.redhat.com
  <ftp://ftp.redhat.com/pub/redhat/code/rpm> 擾ł܂B

  3.2.  RPM ̂߂ɕKvȂ

  RPM ĝɎɕKvƂȂ̂ cpio 2.4.2  ȏ̃o[W
  łBRPM Ƃdg݂ Linux Ŏg߂ɍꂽ̂łA
  Unix VXeɂȒPɈڐAłł傤BہASunOS, Solaris, AIX,
  IRIX, AmigaOS ȂǂłRpCł܂B:قȂ^Cv Unix
  VXeŐꂽoCipbP[W͌݊ĂȂł
  B

  L RPM pbP[WCXg[̂ɍŒKvȂ̂łB\[
  X RPM pbP[W쐬Ȃ΁AʓIɃpbP[W쐬
  ɕKvȂ́AƂ gcc  make Ƃ̈ꎮKvɂȂł
  B

  4.  RPM ̎gp

  RPM găpbP[WCXg[̂͊ȒPłB

       rpm -i foobar-1.0-1.i386.rpm

  pbP[W̃ACXg[ȒPB

       rpm -e foobar

  ƕGɂȂ܂AƂĂ֗ȎĝЂƂɁAFTP 
  pbP[WCXg[邱Ƃ܂B lbg[Nɐڑ
  ĂAVpbP[WCXg[̂Ȃ΁Aȉ̂悤ɐ
   URL Ńt@C𖾋L΂悢̂łB

       rpm -i ftp://ftp.pht.com/pub/linux/redhat/rh-2.0-beta/RPMS/foo-
       bar-1.0-1.i386.rpm

  : RPM   FTP oRŁA₢킹 () CXg[
  ł܂B͒PȃR}hłArpm  Usage bZ[W
  킩悤ɑ̕@Ŏg܂B

  RPM version 2.3.9
  Copyright (C) 1997 - Red Hat Software
  This may be freely redistributed under the terms of the GNU Public License

  usage: rpm {--help}
         rpm {--version}
         rpm {--initdb}   [--dbpath <dir>]
         rpm {--install -i} [-v] [--hash -h] [--percent] [--force] [--test]
                          [--replacepkgs] [--replacefiles] [--root <dir>]
                          [--excludedocs] [--includedocs] [--noscripts]
                          [--rcfile <file>] [--ignorearch] [--dbpath <dir>]
                          [--prefix <dir>] [--ignoreos] [--nodeps]
                          [--ftpproxy <host>] [--ftpport <port>]
                          file1.rpm ... fileN.rpm
         rpm {--upgrade -U} [-v] [--hash -h] [--percent] [--force] [--test]
                          [--oldpackage] [--root <dir>] [--noscripts]
                          [--excludedocs] [--includedocs] [--rcfile <file>]
                          [--ignorearch]  [--dbpath <dir>] [--prefix <dir>]
                          [--ftpproxy <host>] [--ftpport <port>]
                          [--ignoreos] [--nodeps] file1.rpm ... fileN.rpm
         rpm {--query -q} [-afpg] [-i] [-l] [-s] [-d] [-c] [-v] [-R]
                          [--scripts] [--root <dir>] [--rcfile <file>]
                          [--whatprovides] [--whatrequires] [--requires]
                          [--ftpuseport] [--ftpproxy <host>] [--ftpport <port>]
                          [--provides] [--dump] [--dbpath <dir>] [targets]
         rpm {--verify -V -y} [-afpg] [--root <dir>] [--rcfile <file>]
                          [--dbpath <dir>] [--nodeps] [--nofiles] [--noscripts]
                          [--nomd5] [targets]
         rpm {--setperms} [-afpg] [target]
         rpm {--setugids} [-afpg] [target]
         rpm {--erase -e} [--root <dir>] [--noscripts] [--rcfile <file>]
                          [--dbpath <dir>] [--nodeps] [--allmatches]
                          package1 ... packageN
         rpm {-b|t}[plciba] [-v] [--short-circuit] [--clean] [--rcfile  <file>]
                          [--sign] [--test] [--timecheck <s>] specfile
         rpm {--rebuild} [--rcfile <file>] [-v] source1.rpm ... sourceN.rpm
         rpm {--recompile} [--rcfile <file>] [-v] source1.rpm ... sourceN.rpm
         rpm {--resign} [--rcfile <file>] package1 package2 ... packageN
         rpm {--addsign} [--rcfile <file>] package1 package2 ... packageN
         rpm {--checksig -K} [--nopgp] [--nomd5] [--rcfile <file>]
                             package1 ... packageN
         rpm {--rebuilddb} [--rcfile <file>] [--dbpath <dir>]
         rpm {--querytags}

  RPM  man ؁[W΁AL̃IvVȂ̂킩܂B [
  F|󂳂ꂽCrpm.8  <http://www.linux.or.jp/jrpm/doc.html> 
  邱Ƃł܂B]

  5.   RPM Ŏۂɂł邱

  RPM ͂ƂĂLvȃc[ŁAm̒ʂ肢̃IvV
  B̈Ӗ𗝉邽߂ɈԂ̕@͂̗鎖łB
  ܂ł ȒPȃCXg[(ACXg[)̐܂̂ŁA
  ł͂̗܂B

  o  ANVfgɂĂ̃t@CĂ܂
     ̂smłƂ܂傤BSVXeɏƍ
     m肽Ȃ΁Aȉ̂悤ɂΑvłB

       rpm -Va

  o  ôȂt@CRƂ܂傤B͂ǂ̃pbP[
     Ŵ̂ł邩邽߂ɁAȉ̂悤ɂΑvłB

       rpm -qf /usr/X11R6/bin/xjewel

  ̏o͈͂ȉ̂悤ɂȂ܂B

       xjewel-1.6-1

  o  V koules RPM Aꂪł邩mȂɂ́A
     ̂悤ɂΉ񂪓܂B

       rpm -qpi koules-1.2-2.i386.rpm

  ̏o͈͂ȉ̂悤ɂȂ܂B

       Name        : koules                      Distribution: Red Hat Linux Colgate
       Version     : 1.2                               Vendor: Red Hat Software
       Release     : 2                             Build Date: Mon Sep 02 11:59:12 1996
       Install date: (none)                        Build Host: porky.redhat.com
       Group       : Games                         Source RPM: koules-1.2-2.src.rpm
       Size        : 614939
       Summary     : SVGAlib action game with multiplayer, network, and sound support
       Description :
       This arcade-style game is novel in conception and excellent in execution.
       No shooting, no blood, no guts, no gore.  The play is simple, but you
       still must develop skill to play.  This version uses SVGAlib to
       run on a graphics console.

  o  CXg[ koules RPM ɂ͂ǂ̂悤ȃt@C܂܂邩m
     ɂ͈ȉ̂悤ɂĂB

       rpm -qpl koules-1.2-2.i386.rpm

  ̏o͈͂ȉ̂悤ɂȂ܂B

       /usr/doc/koules
       /usr/doc/koules/ANNOUNCE
       /usr/doc/koules/BUGS
       /usr/doc/koules/COMPILE.OS2
       /usr/doc/koules/COPYING
       /usr/doc/koules/Card
       /usr/doc/koules/ChangeLog
       /usr/doc/koules/INSTALLATION
       /usr/doc/koules/Icon.xpm
       /usr/doc/koules/Icon2.xpm
       /usr/doc/koules/Koules.FAQ
       /usr/doc/koules/Koules.xpm
       /usr/doc/koules/README
       /usr/doc/koules/TODO
       /usr/games/koules
       /usr/games/koules.svga
       /usr/games/koules.tcl
       /usr/man/man6/koules.svga.6

  ͂ق̐łBx RPM ɐe߂΂nIȎȒPɎv
  ł܂B

  6.  RPM pbP[W̍쐬

  RPM pbP[W̍쐬͑SȒPłAɍ쐬悤ƂĂ\tgEF
  AɓȂȂłB

  RPM 쐬{Iȉے͈ȉ̒ʂłB

  o  Ȃ̃VXeɓK悤 /etc/rpmrc mɐݒ肵܂B

  o  Ȃ̃VXe RPM 쐬邽߂Ƀ\[XR[hɓ܂B

  o  쐬邽߂ɕKvȃ\[Xւ̕ύXpb`ɂ܂

  o  pbP[Ŵ߂ spec t@C쐬܂B

  o  SĂ̕ꏊɂĂ鎖mF܂B

  o  RPM păpbP[W쐬܂B

  ʓIȑ̉ŁARPM ̓oCiƃ\[XpbP[W쐬܂B

  6.1.  rpmrc t@C

  ݁ARPM ̐ݒ /etc/rpmrc t@Ĉ݂LłBႦΈȉ̂悤
  ɂȂ܂B [󒍁AftHgƂāA/usr/lib/rpmrc Ƃ̂
  Al̐ݒt@CƂČl̃z[fBNg .rpmrc u
  Ƃł܂B]

       require_vendor: 1
       distribution: I roll my own!
       require_distribution: 1
       topdir: /usr/src/me
       vendor: Mickiesoft
       packager:  Mickeysoft Packaging Account <packages@mickiesoft.com>

       optflags: i386 -O2 -m486 -fno-strength-reduce
       optflags: alpha -O2
       optflags: sparc -O2

       signature: pgp
       pgp_name: Mickeysoft Packaging Account
       pgp_path: /home/packages/.pgp

       tmppath: /usr/tmp

  require_vendor ̍s /etc/rpmrc  spec t@C̃wb_
  vendor ̍sTƂ܂B𖳌ɂɂ́Aio[ 0 ɕς
  ĉBrequire_distribution  require_group ̍slłB

  ̍s distribution słB spec t@C̃wb_ɒ`ł
  ܂Bvender slłAł悢łB(AJoe's Software and
  Rock Music Emporium)

  RPM ͂܂ݕ̃A[LeN`ŃpbP[W쐬鎖T|[g
  Ă܂Brpmrc t@C͍쐬ɃA[LeN`ŗL̃tO߂
  悤ȃpbP[W쐬̂ɕKv"optflag" ϐł
  B

  L̃}NɕtāAɂ܂B

       rpm --showrc

  Ƃ΁Aǂ̂悤ȃ^Oݒ肳ALȑSẴtO͉킩
  B

  6.2.  spec t@C

  sepc t@Cɂďqׂčs܂Bspec t@C̓pbP[W쐬
  邽߂ɕKvłBspec t@C͍쐬̎d̎w܂ރ\tgEFA
  ƃCXg[SẴoCit@C̃XgłB

  WIȋKɏ] spec t@C̖Otق悢ł傤B
  ́ApbP[W-_bV-o[Wԍ-_bV-[Xԍ- hb
  g-spec ƂׂłB

  ɊȒP spec t@C܂B(vim-3.0-1.spec) [
  Avim-3.0-1.spec Ƃ܂Aeject-1.4-3.spec ł傤B]

       Summary: ejects ejectable media and controls auto ejection
       Name: eject
       Version: 1.4
       Release: 3
       Copyright: GPL
       Group: Utilities/System
       Source: sunsite.unc.edu:/pub/Linux/utils/disk-management/eject-1.4.tar.gz
       Patch: eject-1.4-make.patch
       Patch1: eject-1.4-jaz.patch
       %description
       This program allows the user to eject media that is autoejecting like
       CD-ROMs, Jaz and Zip drives, and floppy drives on SPARC machines.

       %prep
       %setup
       %patch -p1
       %patch1 -p1

       %build
       make RPM_OPT_FLAGS="$RPM_OPT_FLAGS"

       %install
       install -s -m 755 -o 0 -g 0 eject /usr/bin/eject
       install -m 644 -o 0 -g 0 eject.1 /usr/man/man1

       %files
       %doc README COPYING ChangeLog

       /usr/bin/eject
       /usr/man/man1/eject.1

  6.3.  wb_

  wb_͏ޕKv̂邢̕WIȃtB[h܂B܂
  ӂ܂BtB[h͈ȉ̂悤ɏ܂Ȃ΂Ȃ
  B

  o  Summary: ͈s̃pbP[W̐łB

  o  Name: ͎gƂĂ rpm t@C̕łȂ΂
     ܂B

  o  Version: ͎gƂĂ rpm t@C̃o[Wԍ
     łȂ΂Ȃ܂B

  o  Release: ͓o[W̃pbP[Ŵ߂̃[XԍłB
     (Ⴆ΁ApbP[W쐬ꂪ킸ɉĂ̂𔭌ēx
     KvȂ΁ÃpbP[W̃[Xԍ2ƂȂ
     B)

  o  Icon: ͑̍xȃCXg[c[(Red Hat  "glint"̗l
     )pׂ̃ACRłBgif t@C SOURCES fB
     NgɒuȂ΂Ȃ܂B

  o  Source: ̍s͌̃\[Xt@C̃z[P[Vw܂B
     Ăу\[Xt@CɓꂽƂVo[W`FbN
     Ɏg܂BӁF̍s̃t@CƂȂ̃VXeɎ
     t@C͈vĂȂ΂Ȃ܂B(Ⴆ΁A\[Xt@C
     _E[h̖O͕ςĂ͂܂B) ȏ̃\[X
     t@C𖾋L͈ȉ̂悤ɏ܂B

       Source0: blah-0.tar.gz
       Source1: blah-1.tar.gz
       Source2: fooblah.tar.gz

  ̃t@C SOURCES fBNgɒu܂B(fBNg\
  ̐  "\[X fBNg c[" ň܂B)

  o  EPatch: ͍Ăуpb`_E[hKv鎞ɂ
     鎖̂łꏊłBӁFȂō쐬pb`鎞
     t@C͎gOƈvȂ΂Ȃ܂BႦΈȉ̂悤
     B

       Patch0: blah-0.patch
       Patch1: blah-1.patch
       Patch2: fooblah.patch

  ̃t@C SOURCES fBNgɒu܂B

  o  Copyright: ̍s̓pbP[Wǂ̂悤Ȓ쌠ł邩\܂B
     GPLABSDAMITApublic domainAdistributableAcommercial ̗lȂ
     gׂłB

  o  BuildRoot: ̍s͐VpbP[W쐬ACXg[邽߂ "
     [g" ̃fBNg𖾋L܂BȂ̃}V[ɃCXg[
     OɃpbP[WeXĝ邽߂Ɏgł܂B [
     󒍁AɋLq邾ł́A쐬уeXg͂ł܂Bڂ
     ́ARPM-BUILD-HOWTO ǂނƗǂł傤B]

  o  Group: ̍s͍xȃCXg[vO(Red Hat  "glint"
     ̂悤)ɊKw\̒ł̃vOǂɑ̂𖾎
     ߂ɂ܂B݂ O[v c[͈ȉ̂悤ɂȂĂ
     B[󒍁A{ Extensions/Japanese Ƃ̂܂B]

       Applications
           Communications
           Editors
               Emacs
           Engineering
           Spreadsheets
           Databases
           Graphics
           Networking
           Mail
           Math
           News
           Publishing
               TeX
       Base
           Kernel
       Utilities
           Archiving
           Console
           File
           System
           Terminal
           Text
       Daemons
       Documentation
       X11
           XFree86
               Servers
           Applications
               Graphics
               Networking
           Games
               Strategy
               Video
           Amusements
           Utilities
           Libraries
           Window Managers
       Libraries
       Networking
           Admin
           Daemons
           News
           Utilities
       Development
           Debuggers
           Libraries
               Libc
           Languages
               Fortran
               Tcl
           Building
           Version Control
           Tools
       Shells
       Games

  o  %description ͖{̓wb_̍ڂł͂܂Awb_
     ɋLqׂłBpbP[W()TupbP[WɈ
     ̐(description)̃^OKvłB̓pbP[W̕IȐ
     ^邽߂Ɏgׂs̃tB[hłB

  6.4.  Prep

  ́Aspec t@C2Ԗڂ̃ZNVłB쐬pɏ\[X
  𓾂邽߂Ɏg܂BŁApb`̓Ăꂽ\[X𓾂邽߂ɕK
  vȎ make 邽߂ɕKvȏ܂B

  ӁFeZNV̓VFXNvgۂɎs邽߂̏ꏊłB
  P sh XNvg쐬A\[X𓀂pb`𓖂Ă邽߂ %prep
  ^Ǒɂuł܂BȂA̒ɂ͏L̎x
  邽߂̃}N܂B

  ̍ŏ}N̂́A%setup }NłB̂ƂȒPȌ`(R}
  hC̃IvVȂ)APɃ\[X𓀂 ł\[XfBNg
  ̒ cd 邾łBȉ̃IvV܂B

  o  -n name ͗񋓂ꂽ name ɍ쐬fBNg̖OZbg܂B
     ftHg $NAME-VERSION łB̉\Ƃ $NAMEA
     ${NAME}${VERION}AC tar t@CpĂ̂łB (
      "$" ϐ spec t@C̖{̕ϐłȂɒӂĉ
     B͎Ql̂߂ɂŎgꂽ̂łBۂɂ͕ϐł͂
     pbP[W̖{̖Oƃo[WgKv܂B)

  o  -c  tar t@C𓀂OɖtꂽfBNg肻
      cd ܂B

  o  -b # ̓fBNg cd O Source#  (untar)܂B (
      -c IvVƈꏏɗp͈̂Ӗ܂AȂŉ
     B) ͕̃\[Xt@C鎞̂ݖɗ܂B

  o  -a #  fBNg cd  Source# (untar)܂B

  o  -T ̃IvV̓\[X(untar)̃ftHg𖳌ɂ
     B(untar)ꂽC̃\[Xt@C𓾂邽߂ -b 0 
      -a 0 KvƂ܂B2߂̃\[X鎞ɂKvƂ܂B

  o  -D ͉𓀂OɃfBNg܂B setup }N
     鎞̂ݗLpłBŏ setup }Ň setup }Nł
     ݎgׂłB(čŏ setup }NŎgȂŉB)

     ɗLvȃ}N %patch }NłB̃}N̓\[XɃpb`
     Ăے̎܂B̃IvV肻͈ȉ
     ̒ʂłB

  o  # ̓pb`t@CƂ Patch# 𗘗p܂B

  o  -p # patch(1) R}ĥ߂̎菜fBNg̐𖾋L
     B

  o  -P ftHg̓ł Patch ( Patch0)𓖂Ă܂B̃t
     O̓ftHg̓֎~̂ŉ(untar)ꂽ\[Xt@C
     邽߂ 0 KvƂ܂B̃IvV͍ŏ̃}NƈقȂ
     ԍ߂2Ԗ(͂ȍ~) %patch }NŗLp
     B

  o  { %patch # -p R}h̑ %patch# g܂B

     ȏŕKvȃ}N͑SłB𐳂LqɁAsh XN
     vgpđ̂KvȃZbgAbv鎖ł
     B%build }N(͎߂Ő܂B) sh oRĎs
     ܂ŉł܂߂܂Bōš`͏L̗ĉ
     B

  6.5.  Build

  ̃ZNVɂ̓}N͂܂B\[X(untar)Apb`
  āAfBNg cd Ȃ炱ł͒PɃ\tgEFA쐬邽
  ɕKvȃR}hLqĉB͒P sh ɓñR}h̏W
  ܂Ȃ̂ŁAǂȍ@I sh ̃R}h(Rg܂)łŎs
  ł܂B[󒍁F̓VF̑gݍ݃R}h̎Ă
  ł͂܂B]̃ZNV̊eXōƃfBNg̓\[X
  fBNg̈ԏɃZbg܂̂łoĂĉB
  KvȂ΃TufBNg cd ĉB

  6.6.  Install

  ɂ}N͂܂B{IɂɃCXg[ɕKvȃR}h
  Ȃ牽łu܂B쐬pbP[W make install LȂA
  ɒu܂BłȂ̂ȂAmake install ׂ̈ makefile ւ̃pb
  `𓖂āAmake install 邩Ash R}hɂĎ蓮ŃCXg[
  鎖ł܂B݂̍ƃfBNg\[XfBNg̃gbv
  xł鎖lĉB

  6.7.  pre ,post CXg[ / ACXg[ XNvg (C)

  oCipbP[W̃CXg[ / ACXg[ sOƌɎs
  XNvgɒuł܂BVFA[hCu܂ރpb
  P[W CXg[̓ACXg[ ldconfig s
  悤Ȏ邽߂ɂ̃^O܂BȉɊeX̃XNvĝ
  ߂̃}N܂B

  o  %pre ̓CXg[ÕXNvg߂̃}NłB

  o  %post ̓CXg[̃XNvĝ߂̃}NłB

  o  %preun ̓ACXg[ÕXNvĝ߂̃}NłB

  o  %postun  ACXg[̃XNvĝ߂̃}NłB

  6.8.  Files

  ̃ZNV̓oCipbP[Ŵ߂̃t@C̈ꗗ\Ȃ
  ΂Ȃ܂BRPM  make install ̌ʂǂ̃oCiCXg[
  ̂m@Ȃ߂łB@͂܂! pbP[W
  CXg[Oƌ find s΂悢̂ł͂ȂƋ^Ɏvl
  邩܂B}`[U[VXeɂāApbP[WƊ֌W
  Ȃt@CpbP[W쐬Ăے̊ԂɍĂ邩
  ̂ł͎󂯓܂B

  lɓʂȎ邽߂ɗLȃ}N܂Bȉɐ
  ܂B

  o  %doc ̓oCiCXg[ۂɃCXg[\[Xpb
     P[W̃hLgɈt̂Ɏg܂BhLg
     /usr/doc/$NAME-$VERSION-$RELEASE ɃCXg[܂B̃}N
     găR}hCŕ̃hLg̈ꗗ񋓂邩Ae
     hLgƂɃ}NgĕʁXɗ񋓂邱Ƃł܂B

  o  %config ̓pbP[W̐ݒt@CɈt̂Ɏg܂B
      sendmail.cfApasswd Ȃǂ̂悤Ȃ̂܂݂܂Bɐݒ
     t@C܂ރpbP[WACXg[Ȃ΁AύXĂ
     Ȃt@C͍폜AύXꂽt@C͂ƃt@C
     .rpmsave Ƃgqtꂽ̂ɖOύX܂B̃}N
     łɕ̃t@C̈ꗗ񋓂ł܂B

  o  %dir pbP[WɂďL܂܂t@Cꗗ̒P̃fB
     NgɈt܂BftHgł́A%dir }Ng킸ɃfBN
     g\ȂÃfBNg̑SĂt@CꗗɊ܂
     ꂻČɂ̃pbP[ẄꕔƂăCXg[܂B

  o  %files -f <filename> ̓\[X̍쐬fBNg̔Cӂ̃t@C
     Xgɉ鎖ł܂B̓pbP[Wg̃t@CXg
     쐬鎖łpbP[Wꍇɕ֗łB̎ɂ
     t@CXg܂߂܂AēɃt@Cꗗ\Ă͂Ȃ
     B

  t@Cꗗ̍ő̒ӓ_̓fBNg̈ꗗłBԈ
  /usr/bin ꗗɋLĂ܂AoCipbP[W͂Ȃ̃VXe
   /usr/bin ̑SẴt@C܂ł܂܂B

  6.9.  쐬

  6.9.1.  \[XfBNg c[

  ܂ŏɕKvȎ́AƐݒ肳ꂽ쐬fBNgc[łB
   /etc/rpmrc t@CpĐݒ\łB̐lX /usr/src 
  gł傤B

  쐬\[XfBNgc[邽߂Ɉȉ̃fBNgKv
  邩܂B

  o  BUILD  RPM ɂSĂ̍쐬sfBNgłBɑ̏
     ō쐬̃eXgsKv͂܂񂪁A RPM 쐬p
     ƂłB

  o  SOURCES ̓IWĩ\[X(tar)t@Cƃpb`ufBNg
     łB́ARPM ftHgŒTfBNgłB

  o  SPECS ͑SĂ spec t@CufBNgłB

  o  RPMS  RPM 쐬oCi RPM pbP[WufBNgł

  o  SRPMS  SẴ\[X RPM pbP[WufBNgłB

  6.9.2.  쐬eXg

  炭ŏɂƂ́ARPM pɍ쐬邽߂̃\[Xc[
  邱Ƃł傤B邽߂ɁA\[X𓀂AfBNg
  $NAME.orig ɕύXĉBĂx\[X𓀂ĉB
  Ẵ\[X쐬ɎgpĉB\[XfBNgɓ쐬
  ߂̎wɂĉBҏWȂ΂ȂȂȂA
  pb`KvƂȂ܂Bx邽߂Ƀ\[XfBNgꂢ
  ɂ܂B./configure XNvgɂ萶ꂽt@CmF폜
  ܂B[󒍁FvɁA make ꔭԂɂΗǂƂ
  B] āA\[XfBNg̐efBNg cd ܂Bȉ̂
  ɂ܂B

       diff -uNr dirname.orig dirname > ../SOURCES/dirname-linux.patch

  ́Aspec t@CŎgp\ȃpb`쐬܂BL"linux"͒P
  Ɏʎqł邱ƂɒӂĉBȂpb`쐬Ȃ΂ȂȂ
  邽߂ "config"  "bugs" ̗lȂIȂ̂gĂ
  悢ł傤BԈăoCi܂߂Ȃ悤ɊmF邽߂ɍ쐬
  pb`gpOɒׂ̂͂悢lłB

  6.9.3.  t@CXg̐

  쐬邽߂̃\[XɂAǂč쐬邩킩Ȃ
  ΁A쐬CXg[܂BCXg[̌ʂ̏o͂ spec t@C
  ŗp邽߂̃t@CXg쐬܂B́AĂSẴX
  ebvŕs spec t@C쐬Ă܂Bŏ̃t@CXg
  쐬ĊȒPȕ݁AďǂĖ߂Ă܂B

  6.9.4.  RPM ppbP[W̍쐬

  spec t@CIȂApbP[W쐬鏀ł܂B
  ƂLȕ@́Aȉ̂悤ȃR}hgƂłB

       rpm -ba foobar-1.0.spec

  -b XCb`ɂ͈ȉ̂悤ȗLpȃIvV܂B

  o  p  spec t@C prep ZNVs܂B

  o  l  %files ̃Xg`FbN܂B

  o  c  prep ZNVs RpCs܂B̓\[X
     Sɍ\zł̂ǂsmȎɖ𗧂܂B\[X\z
     ꂩ RPM g͂߂܂ł́A\[X݂̂ōƂł傤
     AɗȂƎv܂BU RPM ĝɊĂ
     ΁AgႪł傤B [󒍁A%Build ZNV̗L
     mF邮炢ł傤B]

  o  i  prep ZNVsARpC CXg[s܂B

  o  b  prep ZNVsARpC CXg[sAoCi
     pbP[Ŵ݂쐬܂B

  o  a ͑SĂ쐬܂B(\[XƃoCĩpbP[W̗)

  -b XBb`ɂ͈ȉ̂悤Ȃ̕ύXq܂B

  o  --short-circuit ͎w肳ꂽ΂܂B(c  i ł̂ݎgp
     ܂B)

  o  --clean ̓pbP[W̍쐬Iɍ쐬fBNgc[
     ܂B

  o  --keep-temps  /tmp ȉɍꂽSĂ̈ꎞt@CƃXNvg
     ۑ܂B -v IvVp邱Ƃɂ /tmp ɍꂽ
     t@C邱Ƃł܂B

  o  --test ͎ۂɂ͂ǂ̏s͂܂񂪁Akeep-temp ͍s܂B

  6.10.  eXg

  A\[XyуoCi rpm pbP[W쐬AeX
  gKv܂BłȒPŗǂ@́ApbP[W쐬}V
  ƑSقȂ}VŃeXg鎖łBȂȂAȂ̃}V
  x make install Ă̂ŁAƃCXg[͂
  łB

  eXĝ߂ rpm -u pbP[W Ƃ邱Ƃł܂A[󒍁F
   typo  rpm -e ł傤Brpm -u ݂͌ł͓삵܂B ]
  pbP[W쐬̎ make install sĂ̂ŊԈႤ
  ܂Bt@CXgɉkꂪƁAACXg[܂B
  ̎ɂ̓oCipbP[WăCXg[ăVXeĂъSȂ
  ɂ܂A rpm pbP[W͂܂Sł͂܂BȂ́A
  rpm -ba spect@C ƂSɎ~߂Ă
  B̐lX pbP[WCXg[̂ rpm -i pb
  P[W słBoCiCXg[鎞ɕKvȎ
  build ZNV install ZNVŉĂȂƂmFĂ
  B

  6.11.  V쐬 RPM pbP[WǂΗǂB

  AȂ RPM pbP[W쐬Ȃ(łɉ RPM 
  Ɖ肵܂)AȂ̍쐬pbP[Wő̐lɍv鎖ł
  (쐬 RPM pbP[WRɔzz\Ȃ̂Ƃ܂)B邽
  ߂ɁAftp.redhat.com ɃAbv[hĂB
  <ftp://ftp.redhat.com>

  6.12.  What Now?

  V RPM pbP[Wł邱ƂƃeXgɊւĂ͏L̃ZNV
  ĂBB 擾\ SĂ RPM pbP[WWĂ܂B
  āA炪f炵 RPM pbP[Wł邱Ƃ]ł܂B
  pbP[W悭ԂăeXgĂBāAl̗
  v̂߂ɂAbv[h邽߂ɎԂĂBlɁA
  Rɔzzł\tgEFÂ݂Abv[h悤ɂĂB
  p\tgEFAyуVFAEFA͂̒쌠͂ƎRɔzz
  鎖鎖yĂȂAbv[hׂł͂܂B
  ɂ́ANetscape \tgEFAAsshApgp ܂܂܂B

  7.  }` A[LeN`p RPM pbP[W̍쐬

  RPM ͌ Intel i386ADegital AlphaASparc pɃpbP[W쐬邽
  ߂Ɏgł܂BSGI  HP ̃[NXe[Vłlɓ
  񍐂Ă܂BSẴvbgtH[ŊȒPɃpbP[W쐬
  邽߂̓܂B܂ /etc/rpmrc ̒ "optflag"
  ̎włB̓\tgEFA쐬鎞ɎgtOA[LeN
  `L̒lɐݒ肷邽߂Ɏgł܂B̋@\Ƃ spec t@
  C "arch" }N܂B͍쐬A[LeN`Ɉˑ
  قȂƂ邽߂Ɏgł܂BɁAwb_ "Exclude"
  ̎włB

  7.1.  Tv spec t@C

  ȉ "fileutils" pbP[W spec t@C̈ꕔłB Alpha 
  Intel ̗쐬邽߂̍\łB

  Summary: GNU File Utilities
  Name: fileutils
  Version: 3.16
  Release: 1
  Copyright: GPL
  Group: Utilities/File
  Source0: prep.ai.mit.edu:/pub/gnu/fileutils-3.16.tar.gz
  Source1: DIR_COLORS
  Patch: fileutils-3.16-mktime.patch

  %description
  These are the GNU file management utilities.  It includes programs
  to copy, move, list, etc, files.

  The ls program in this package now incorporates color ls!

  %prep
  %setup

  %ifarch alpha
  %patch -p1
  autoconf
  %endif
  %build
  configure --prefix=/usr --exec-prefix=/
  make CFLAGS="$RPM_OPT_FLAGS" LDFLAGS=-s

  %install
  rm -f /usr/info/fileutils*
  make install
  gzip -9nf /usr/info/fileutils*

  7.2.  optflags

  ̗ł́Aǂ̂悤 /etc/rpmrc  "optflags" ̎wgĂ
  ł傤BȂ쐬ĂA[LeN`ɈˑKȒl
   RPM_OPT_FLAGS ɗ^Ă܂BgpĂ(-m486  -O2 ̂悤
  ) ʏ̎w̑ɂ̕ϐpɂ́ApbP[W Makefile 
  pb`𓖂ĂȂ΂Ȃ܂B̃\[XpbP[WCXg[
  ƂɂĕKvƂȂ邱Ƃ\[X𓀂 Makefile 𒲂ׂ邱Ƃ
  ǂƊł傤B̎AMakefile ̂߂̃pb`ׁA
  ˂΂ȂȂĂB

  7.3.  }N

  %ifarch }N͂ƂĂdvłB̏ꍇ̃pb`͓
  A[LeN`p̓̃pb`Kvł傤B̂悤ȏ
  ARPM ͓KA[LeN`p̃pb`݂̂𓖂Ă邱Ƃł܂B

  L̗ƂāAfileutils 64rbg}Ṽpb`Ă܂B
  炩ɁA Alpha ɂ̂ݓĂׂłBŁAB́A64
  rbgpb`̂Ƃ %ifarch }Nt܂B

       %ifarch axp
       %patch1 -p1
       %endif

   Alpha ȊÕA[LeN`ɂ͓ĂȂpb`ł邱Ƃ
  ؂܂B

  7.4.  pbP[W A[LeN`O

  SẴvbgz[̂߂Ɉ̃fBNgŃ\[X RPM pbP[W
  eiXł悤ɂ邽߂ɁAB͂A[LeN`ō쐬
  邱ƂpbP[W"O"邽߂̋@\܂B͈
  ̂悤Ɏsł܂B

       rpm --rebuild /usr/src/SRPMS/*.rpm

  ĐpbP[W쐬܂Bvbgz[ɃAv
  P[VڐAĂȂ̂Ȃ΁AȂȂ΂ȂȂƑS
  Ă̓\[XpbP[W spec t@C̃wb_Ɉȉ̂悤Ȉst
  邱ƂłB

       ExcludeArch: axp

  ̂悤ɂĂA쐬vbgz[ŃpbP[Wč쐬Ă
  B΁AȂ Intel ō쐬邽߂̃\[XpbP[W
  ɂ邱ƂɂȂAAlpha ͊̕ȒPɔ΂Ƃł܂B

  7.5.  Ō

  }` A[LeN`p̃pbP[W쐬邽߂ RPM p邱Ƃ
  ĂpbP[W𗼕̃A[LeN`ō쐬ȒPłB
  ȂA쐬̂ƂĂpbP[W쐬΂ȒP
  ȂĂ܂B̂悤ɁARPM pbP[W쐬̂ɂ܂
  ɍł悢ƂȂ邱Ƃ͎悤ȃ\[XpbP[W𒲂ׂ邱ƂłB

  8.  쌠m

  ̕Ɠe͒쌠ɂĕی삳Ă܂B̍̕Ĕzz͓e
  SƂ̂܂܂ŖύXłꍇɌ苖܂B΁A
  ̌`̕ύXyѓ]ڂ͍Ĕzẑ݂܂B

  [҂F͌̕fڂĂ܂B]

  This document and its contents are copyright protected.
  Redistribution of this document is permitted as long as the content
  remains completely intact and unchanged.  In other words, you may
  reformat and reprint or redistribute only.

