RPM HOWTO

Donnie Barnes, djb@redhat.com, ÐÅÒÅ×ÏÄ Alex Ott ott@phtd.tpu.edu.ru

v2.0, 8 ÁÐÒÅÌÑ 1997

ðÒÉÍÅÞÁÎÉÅ ÐÅÒÅ×ÏÄÞÉËÁ: ûÌÉÔÅ ÍÎÅ ÌÀÂÙÊ ËÏÍÍÅÎÔÁÒÉÉ É ÚÁÍÅÞÁÎÉÑ, ÄÁÖÅ ÎÅÂÏÌØÛÉÅ.

1. ÷×ÅÄÅÎÉÅ

RPM ÜÔÏ Red Hat Package Manager (íÅÎÅÄÖÅÒ ÐÁËÅÔÏ× RedHat). èÏÔÑ ÏÎ ÓÏÄÅÒÖÉÔ Red Hat × Ó×ÏÅÍ ÉÍÅÎÉ, ÏÎ ÐÏÌÎÏÓÔØÀ ÐÒÅÄÎÁÚÎÁÞÅÎ ÒÁÂÏÔÁÔØ ËÁË ÏÔËÒÙÔÁÑ ÐÁËÅÔÎÁÑ ÓÉÓÔÅÍÁ ÄÏÓÔÕÐÎÁÑ ÄÌÑ ÉÓÐÏÌØÚÏ×ÁÎÉÑ ËÅÍ ÕÇÏÄÎÏ. ïÎÁ ÐÏÚ×ÏÌÑÅÔ ÐÏÌØÚÏ×ÁÔÅÌÑÍ ÂÒÁÔØ ÉÓÈÏÄÎÙÊ ËÏÄ ÄÌÑ ÎÏ×ÏÇÏ ÐÒÏÇÒÁÍÍÎÏÇÏ ÏÂÅÓÐÅÞÅÎÉÑ É ÕÐÁËÏ×Ù×ÁÔØ ÅÇÏ × ÆÏÒÍÅ ÉÓÈÏÄÎÏÇÏ É Ä×ÏÉÞÎÏÇÏ ËÏÄÁ, ÔÁË ÞÔÏ Ä×ÏÉÞÎÙÅ ÆÁÊÌÙ ÍÏÇÕÔ ÂÙÔØ ÌÅÇËÏ ÕÓÔÁÎÏ×ÌÅÎÙ É ÏÔÓÌÅÖÅÎÙ, Á ÉÓÈÏÄÎÙÊ ËÏÄ ÌÅÇËÏ ÐÏÓÔÒÏÅÎ. üÔÁ ÓÉÓÔÅÍÁ ÔÁËÖÅ ÓÏÐÒÏ×ÏÖÄÁÅÔ ÂÁÚÕ ÄÁÎÎÙÈ ×ÓÅÈ ÐÁËÅÔÏ× É ÉÈ ÆÁÊÌÏ×, ÞÔÏ ÍÏÖÅÔ ÂÙÔØ ÉÓÐÏÌØÚÏ×ÁÎÏ ÄÌÑ ÐÒÏ×ÅÒËÉ ÐÁËÅÔÏ× É ÚÁÐÒÏÓÁ ÉÎÆÏÒÍÁÃÉÉ Ï ÆÁÊÌÁÈ É/ÉÌÉ ÐÁËÅÔÁÈ.

Red Hat Software ÐÏÏÝÒÑÅÔ ÓÏÚÄÁÔÅÌÅÊ ÄÒÕÇÉÈ ÄÉÓÔÒÉÂÕÔÉ×Ï× ÞÔÏÂÙ ÏÎÉ ×ÚÇÌÑÎÕÌÉ ÎÁ RPM É ÉÓÐÏÌØÚÏ×ÁÌÉ ÅÇÏ ÄÌÑ Ó×ÏÉÈ ÓÏÂÓÔ×ÅÎÎÙÈ ÄÉÓÔÒÉÂÕÔÉ×Ï×. RPM Ñ×ÌÑÅÔÓÑ ÄÏ×ÏÌØÎÏ ÇÉÂËÏÊ ÓÉÓÔÅÍÏÊ É ÌÅÇËÏÊ × ÉÓÐÏÌØÚÏ×ÁÎÉÉ, ÈÏÔÑ ÏÎ ÏÂÅÓÐÅÞÉ×ÁÅÔ ÏÓÎÏ×Õ ÄÌÑ ÏÞÅÎØ ÓÌÏÖÎÙÈ ÓÉÓÔÅÍ. ïÎ ÔÁËÖÅ ÐÏÌÎÏÓÔØÀ ÏÔËÒÙÔ É ÄÏÓÔÕÐÅÎ, É ÍÙ ÂÕÄÅÍ Õ×ÅÌÉÞÉ×ÁÔØ ÓÐÉÓÏË ÎÁÊÄÅÎÎÙÈ ÏÛÉÂÏË É ÉÓÐÒÁ×ÌÅÎÉÊ. òÁÚÒÅÛÅÎÉÅ ÄÁÎÏ ÎÁ Ó×ÏÂÏÄÎÏÅ ÉÓÐÏÌØÚÏ×ÁÎÉÅ É ÒÁÓÐÒÏÓÔÒÁÎÅÎÉÅ RPM ÂÅÚ ÏÐÌÁÔÙ ÐÏÄ ÄÅÊÓÔ×ÉÅÍ GPL.

âÏÌÅÅ ÐÏÌÎÁÑ ÄÏËÕÍÅÎÔÁÃÉÑ Ï RPM ÄÏÓÔÕÐÎÁ × ËÎÉÇÅ Ed Bailey, Maximum RPM. üÔÁ ËÎÉÇÁ ÄÏÓÔÕÐÎÁ ÄÌÑ ÓËÁÞÉ×ÁÎÉÑ ÉÌÉ ÐÏËÕÐËÉ Ó www.redhat.com.

2. ïÂÚÏÒ

ðÅÒ×ÙÍ ÄÅÌÏÍ ÒÁÚÒÅÛÉÔÅ ÍÎÅ ÉÚÌÏÖÉÔØ ÆÉÌÏÓÏÆÉÀ RPM. ïÄÎÁ ÉÚ ÃÅÌÅÊ ÐÒÏÅËÔÉÒÏ×ÁÎÉÑ ÂÙÌÁ × ÔÏÍ ÞÔÏÂÙ ÐÏÚ×ÏÌÉÔØ ÉÓÐÏÌØÚÏ×ÁÔØ ``ÂÅÚÕÐÒÅÞÎÙÅ'' ÉÓÈÏÄÎÙÅ ÔÅËÓÔÙ. ÷ RPP (ÎÁÛÅÊ ÐÒÅÄÙÄÕÝÅÊ ÓÉÓÔÅÍÅ ÐÁËÅÔÏ× ÏÔ ËÏÔÏÒÏÊ RPM ÎÅ ÕÎÁÓÌÅÄÏ×ÁÌÁ ÎÉÞÅÇÏ) ÉÓÈÏÄÎÙÅ ÔÅËÓÔÙ ÂÙÌÉ ``ÉÓÐÒÁ×ÌÅÎÙ'', ÞÔÏÂÙ ÍÙ ÍÏÇÌÉ ÓËÏÍÐÉÌÉÒÏ×ÁÔØ ÉÈ. ôÅÏÒÅÔÉÞÅÓËÉ ËÔÏ-ÌÉÂÏ ÄÏÌÖÅÎ ÂÙÌ ÕÓÔÁÎÏ×ÉÔØ ÉÓÈÏÄÎÙÅ ÔÅËÓÔÙ Ó ÐÏÍÏÝØÀ RPP É ÓÏÂÒÁÔØ ÉÈ ÂÅÚ ÐÒÏÂÌÅÍ. îÏ ÉÓÈÏÄÎÙÅ ÔÅËÓÔÙ ÂÙÌÉ ÎÅ ÏÒÉÇÉÎÁÌØÎÙÍÉ É ÎÅ ÂÙÌÏ ÓÓÙÌÏË ÎÁ ÔÏ ËÁËÉÅ ÉÚÍÅÎÅÎÉÑ ÍÙ ÓÄÅÌÁÌÉ, ÞÔÏÂÙ ÚÁÓÔÁ×ÉÔØ ÉÈ ÒÁÂÏÔÁÔØ. îÅËÏÔÏÒÙÅ ÌÀÄÉ ÚÁÇÒÕÖÁÌÉ ÂÅÚÕÐÒÅÞÎÙÅ ÉÓÈÏÄÎÙÅ ÔÅËÓÔÙ ÒÁÚÄÅÌØÎÏ. ÷ RPM ÍÙ ÉÍÅÅÍ ÂÅÚÕÐÒÅÞÎÙÅ ÉÓÈÏÄÎÙÅ ÔÅËÓÔÙ ×ÍÅÓÔÅ Ó ÚÁÐÌÁÔËÁÍÉ, ËÏÔÏÒÙÅ ÉÓÐÏÌØÚÕÀÔÓÑ ÄÌÑ ËÏÍÐÉÌÑÃÉÉ. íÙ ÒÁÓÓÍÁÔÒÉ×ÁÅÍ ÜÔÏ ËÁË ÂÏÌØÛÏÅ ÄÏÓÔÉÖÅÎÉÅ. äÌÑ ÎÅËÏÔÏÒÙÈ ÌÀÄÅÊ. ÅÓÌÉ ÐÒÉÛÌÁ ÎÏ×ÁÑ ×ÅÒÓÉÑ ÐÒÏÇÒÁÍÍÙ, ×ÁÍ ÎÅ ÎÕÖÎÏ ÎÁÞÉÎÁÔØ Ó ÓÁÍÏÇÏ ÎÁÞÁÌÁ ÞÔÏÂÙ ÚÁÓÔÁ×ÉÔØ ÅÅ ÓËÏÍÐÉÌÉÒÏ×ÁÔØÓÑ ÐÏÄ RHL. ÷Ù ÍÏÖÅÔÅ ÐÏÓÍÏÔÒÅÔØ ÎÁ ÚÁÐÌÁÔËÕ (patch), ÞÔÏÂÙ Õ×ÉÄÅÔØ ÞÔÏ ×ÁÍ ÎÅÏÂÈÏÄÉÍÏ ÓÄÅÌÁÔØ. ÷ÓÅ ÚÎÁÞÅÎÉÑ ÐÏ ÕÍÏÌÞÁÎÉÀ ÄÌÑ ËÏÍÐÉÌÑÃÉÉ ÌÅÇËÏ ×ÉÄÎÙ ÐÒÉ ÜÔÏÍ ÓÐÏÓÏÂÅ.

RPM ÔÁËÖÅ ÓÐÒÏÅËÔÉÒÏ×ÁÎ, ÞÔÏÂÙ ÉÍÅÔØ ÍÏÝÎÕÀ ÓÉÓÔÅÍÕ ÚÁÐÒÏÓÁ. ÷Ù ÍÏÖÅÔÅ ÉÓËÁÔØ ×Ï ×ÓÅÊ ×ÁÛÅÊ ÂÁÚÅ ÄÁÎÎÙÈ ÉÎÆÏÒÍÁÃÉÀ Ï ÐÁËÅÔÅ ÉÌÉ Ï ÐÒÏÓÔÏ ÏÐÒÅÄÅÌÅÎÎÙÈ ÆÁÊÌÁÈ. ÷Ù ÔÁËÖÅ ÍÏÖÅÔÅ ÌÅÇËÏ ÎÁÊÔÉ ËÁËÏÍÕ ÐÁËÅÔÕ ÐÒÉÎÁÄÌÅÖÉÔ ÆÁÊÌ É É ÏÔËÕÄÁ ÐÏÑ×ÉÌÓÑ. óÁÍÉ ÆÁÊÌÙ RPM Ñ×ÌÑÀÔÓÑ ÓÖÁÔÙÍÉ ÁÒÈÉ×ÁÍÉ, ÎÏ ×Ù ÍÏÖÅÔÅ ÚÁÐÒÁÛÉ×ÁÔØ ÏÔÄÅÌØÎÙÊ ÐÁËÅÔ ÏÞÅÎØ ÌÅÇËÏ É ÂÙÓÔÒÏ, ÐÏÔÏÍÕ-ÞÔÏ Ë ÐÁËÅÔÕ ÄÏÂÁ×ÌÅÎ ÄÏÐÏÌÎÉÔÅÌØÎÙÊ Ä×ÏÉÞÎÙÊ ÚÁÇÏÌÏ×ÏË ÓÏ ×ÓÅÍ ÞÔÏ ×ÁÍ ÍÏÖÅÔ ÂÙÔØ ÎÅÏÂÈÏÄÉÍÏ ÚÎÁÔØ × ÎÅÓÖÁÔÏÊ ÆÏÒÍÅ. üÔÏ ÐÏÚ×ÏÌÑÅÔ ÐÒÏÉÚ×ÏÄÉÔØ ÂÙÓÔÒÙÅ ÚÁÐÒÏÓÙ.

äÒÕÇÏÅ ÍÏÝÎÏÅ Ó×ÏÊÓÔ×Ï -- ÜÔÏ ÐÒÏ×ÅÒËÁ ÐÁËÅÔÏ×. åÓÌÉ ×Ù ÂÅÓÐÏËÏÉÔÅÓØ Ï ÔÏÍ, ÞÔÏ ×Ù ÕÄÁÌÉÌÉ ×ÁÖÎÙÊ ÆÁÊÌ ÉÚ ÎÅËÏÔÏÒÏÇÏ ÐÁËÅÔÁ, ÐÒÏÓÔÏ ÐÒÏ×ÅÒØÔÅ ÜÔÏ. ÷Ù ÂÕÄÅÔÅ ÏÐÏ×ÅÝÅÎÙ Ï ÌÀÂÙÈ ÁÎÏÍÁÌÉÑÈ. ó ÜÔÏÊ ÔÏÞËÉ ×Ù ÍÏÖÅÔÅ ÐÅÒÅÕÓÔÁÎÏ×ÉÔØ ÐÁËÅÔ, ÅÓÌÉ ÜÔÏ ÎÅÏÂÈÏÄÉÍÏ. ìÀÂÙÅ ËÏÎÆÉÇÕÒÁÃÉÏÎÎÙÅ ÆÁÊÌÙ ÂÕÄÕÔ ÓÏÈÒÁÎÅÎÙ.

íÙ ÈÏÔÉÍ ÏÔÂÌÁÇÏÄÁÒÉÔØ ÌÀÄÅÊ ÉÚ ÄÉÓÔÒÉÂÕÔÉ×ÎÏÊ ÇÒÕÐÐÙ BOGUS ÚÁ ÍÎÏÖÅÓÔ×Ï ÉÈ ÉÄÅÊ É ËÏÎÃÅÐÃÉÊ, ËÏÔÏÒÙÅ ×ËÌÀÞÅÎÙ × RPM. èÏÔÑ RPM ÂÙÌ ÐÏÌÎÏÓÔØÀ ÎÁÐÉÓÁÎ Red Hat Software, ÅÇÏ ÏÐÅÒÁÃÉÉ ÏÓÎÏ×ÁÎÙ ÎÁ ËÏÄÅ, ÎÁÐÉÓÁÎÎÏÍ BOGUS (PM É PMS).

3. ïÓÎÏ×ÎÁÑ ÉÎÆÏÒÍÁÃÉÑ

3.1 ðÏÌÕÞÅÎÉÅ RPM

ìÕÞÛÉÊ ÓÐÏÓÏ ÐÏÌÕÞÉÔØ RPM ÜÔÏ ÕÓÔÁÎÏ×ÉÔØ Red Hat Linux. åÓÌÉ ×Ù ÎÅ ÈÏÔÉÔÅ ÄÅÌÁÔØ ÜÔÏ, ÔÏ ×Ù ×ÓÅ ÒÁ×ÎÏ ÓÍÏÖÅÔÅ ÐÏÌÕÞÉÔØ É ÉÓÐÏÌØÚÏ×ÁÔØ RPM. ïÎ ÍÁÖÅÔ ÂÙÔØ ÐÏÌÕÞÅÎ Ó ftp.redhat.com.

3.2 ôÒÅÂÏ×ÁÎÉÑ RPM

ïÓÎÏ×ÎÏÅ ÔÒÅÂÏ×ÁÎÉÅ ÄÌÑ ÚÁÐÕÓËÁ RPM ÜÔÏ ÎÁÌÉÞÉÅ cpio 2.4.2 ÉÌÉ ÓÔÁÒÛÅ. èÏÔÑ ÜÔÁ ÓÉÓÔÅÍÁ ÐÒÅÄÎÁÚÎÁÞÅÎÁ ÄÌÑ ÉÓÐÏÌØÚÏ×ÁÎÉÑ × Linux, ÏÎÁ ÍÏÖÅÔ ÂÙÔØ ÓÐÏËÏÊÎÏ ÐÅÒÅÎÅÓÅÎÁ ÎÁ ÄÒÕÇÉÅ Unix-ÓÉÓÔÅÍÙ. ïÎÁ ÂÙÌÁ ÓËÏÍÐÉÌÉÒÏ×ÁÎÁ ÎÁ SunOS, Solaris, AIX, Irix, AmigaOS, É ÄÒÕÇÉÈ. âÕÄØÔÅ ÐÒÅÄÕÐÒÅÖÄÅÎÙ, Ä×ÏÉÞÎÙÅ ÐÁËÅÔÙ, ÓÇÅÎÅÒÉÒÏ×ÁÎÎÙÅ ÎÁ ÒÁÚÎÙÈ ÔÉÐÁÈ ÓÉÓÔÅÍ Unix ÎÅ Ñ×ÌÑÀÔÓÑ ÓÏ×ÍÅÓÔÉÍÙÍÉ.

üÔÏ ÍÉÎÉÍÁÌØÎÙÅ ÔÒÅÂÏ×ÁÎÉÑ ÄÌÑ ÕÓÔÁÎÏ×ËÉ RPM. äÌÑ ÐÏÓÔÒÏÅÎÉÑ RPM ÉÚ ÉÓÈÏÄÎÙÈ ÔÅËÓÔÏ×, ×ÁÍ ÔÁËÖÅ ÎÅÏÂÈÏÄÉÍÏ ×ÓÅ ÏÂÙÞÎÏ ÔÒÅÂÕÅÍÏÅ ÄÌÑ ÐÏÓÔÒÏÅÎÉÑ ÐÁËÅÔÁ, ÐÏÄÏÂÎÏ gcc, make, É Ô.Ð.

4. éÓÐÏÌØÚÏ×ÁÎÉÅ RPM

÷ ÐÒÏÓÔÅÊÛÅÊ ÆÏÒÍÅ RPM ÍÏÖÅÔ ÂÙÔØ ÉÓÐÏÌØÚÏ×ÁÎ ÄÌÑ ÕÓÔÁÎÏ×ËÉ ÐÁËÅÔÏ×:

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

óÌÅÄÕÀÝÁÑ ÐÒÏÓÔÁÑ ËÏÍÁÎÄÁ ÉÓÐÏÌØÚÕÅÔÓÑ ÄÌÑ ÕÄÁÌÅÎÉÑ ÐÁËÅÔÁ:

        rpm -e foobar

ïÄÎÁ ÉÚ ÂÏÌÅÅ ÓÌÏÖÎÙÈ, ÎÏ ÏÞÅÎØ ÐÏÌÅÚÎÙÈ ËÏÍÁÎÄ ÐÏÚ×ÏÌÑÅÔ ×ÁÍ ÕÓÔÁÎÁ×ÌÉ×ÁÔØ ÐÁËÅÔÙ ÞÅÒÅÚ FTP. åÓÌÉ ×Ù ÐÏÄËÌÀÞÅÎÙ Ë ÓÅÔÉ É ÈÏÔÉÔÅ ÕÓÔÁÎÏ×ÉÔØ ÎÏ×ÙÊ ÐÁËÅÔ, ×ÓÅ ÞÔÏ ×ÁÍ ÎÕÖÎÏ -- ÜÔÏ ÕËÁÚÁÔØ ÆÁÊÌ Ó ÐÒÁ×ÉÌØÎÙÍ URL, ÐÒÉÍÅÒÎÏ ÔÁË:

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

úÁÍÅÔÉÍ, ÞÔÏ RPM ÚÁÐÒÏÓÉÔ É/ÉÌÉ ÕÓÔÁÎÏ×ÉÔ ÞÅÒÅÚ FTP.

èÏÔÑ ÜÔÏ ÐÒÏÓÔÙÅ ËÏÍÁÎÄÙ, RPM ÍÏÖÅÔ ÂÙÔØ ÉÓÐÏÌØÚÏ×ÁÎ ÍÎÏÖÅÓÔ×ÏÍ ÓÐÏÓÏÂÏ×, ËÁË ÜÔÏ ×ÉÄÎÏ ÉÚ ÓÏÏÂÝÅÎÉÑ Ï ÉÓÐÏÌØÚÏ×ÁÎÉÉ (Usage):

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.

5. þÔÏ Ñ ÍÏÇÕ ÐÏ-ÎÁÓÔÏÑÝÅÍÕ ÄÅÌÁÔØ Ó RPM?

RPM ÜÔÏ ÏÞÅÎØ ÐÏÌÅÚÎÁÑ ÕÔÉÌÉÔÁ, É ËÁË ×Ù ×ÉÄÉÔÅ ÉÍÅÅÔ ÒÁÚÌÉÞÎÙÅ ÏÐÃÉÉ. ìÕÞÛÉÊ ÓÐÏÓÏ ÐÒÏÞÕ×ÓÔ×Ï×ÁÔØ ÉÈ ÜÔÏ ÐÏÓÍÏÔÒÅÔØ ÎÁ ÎÅÓËÏÌØËÏ ÐÒÉÍÅÒÏ×. ñ ÐÒÉ×ÅÌ ÐÒÏÓÔÙÅ ÐÒÉÍÅÒÙ ÕÓÔÁÎÏ×ËÉ/ÕÄÁÌÅÎÉÑ ×ÙÛÅ, ÔÁË ÞÔÏ ÚÄÅÓØ ÂÕÄÅÔ ÎÅÓËÏÌØËÏ ÂÏÌØÛÅ ÐÒÉÍÅÒÏ×:

üÔÏ ÔÏÌØËÏ ÎÅÓËÏÌØËÏ ÐÒÉÍÅÒÏ×. âÏÌÅÅ Ô×ÏÒÞÅÓËÉÅ ÐÒÉÍÅÒÙ ÍÏÇÕÔ ÐÒÉÄÕÍÁÎÙ ÌÅÇËÏ, ÅÓÌÉ ×Ù ÐÏÄÒÕÖÉÔÅÓØ Ó RPM.

6. ðÏÓÔÒÏÅÎÉÅ ÐÁËÅÔÏ× RPM

ðÏÓÔÒÏÉÔØ ÐÁËÅÔÙ RPM ÄÏ×ÏÌØÎÏ ÌÅÇËÏ, ÏÓÏÂÅÎÎÏ ÅÓÌÉ ×Ù ÍÏÖÅÔÅ ÐÏÌÕÞÉÔØ ÐÒÏÇÒÁÍÍÎÏÅ ÏÂÅÓÐÅÞÅÎÉÅ, ËÏÔÏÒÙÅ ×Ù ÐÙÔÁÅÔÅÓØ ÕÐÁËÏ×ÁÔØ ÞÔÏÂÙ ÐÏÓÔÒÏÉÔØ ÄÌÑ ÓÅÂÑ.

ïÓÎÏ×ÎÙÅ ÐÒÏÃÅÄÕÒÙ ÞÔÏÂÙ ÐÏÓÔÒÏÉÔØ ÐÁËÅÔ RPM ÓÌÅÄÕÀÝÉÅ:

ðÒÉ ÎÏÒÍÁÌØÎÙÈ ÕÓÌÏ×ÉÑÈ, RPM ÐÏÓÔÒÏÉÔ É Ä×ÏÉÞÎÙÊ ÐÁËÅÔ É ÐÁËÅÔ Ó ÉÓÈÏÄÎÙÍ ËÏÄÏÍ.

6.1 æÁÊÌ rpmrc

îÁÓÔÒÏÊËÁ RPM ÄÏÓÔÕÐÎÁ ÞÅÒÅÚ ÆÁÊÌ /etc/rpmrc. ðÒÉÍÅÒ ×ÙÇÌÑÄÉÔ ÐÏÄÏÂÎÏ:

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 ÚÁÓÔÁ×ÌÑÅÔ RPM ÎÁÊÔÉ ÓÔÒÏËÕ ÐÒÏÉÚ×ÏÄÉÔÅÌÑ. ïÎÁ ÍÏÖÅÔ ÂÙÔØ ÉÚ ÆÁÊÌÁ /etc/rpmrc ÉÌÉ ÉÚ ÚÁÇÏÌÏ×ËÁ ÓÁÍÏÇÏ spec-ÆÁÊÌÁ. þÔÏ ×ÙËÌÀÞÉÔØ ÜÔÕ ÏÐÃÉÀ, ÓÍÅÎÉÔÅ ÞÉÓÌÏ ÎÁ 0. ôÏÖÅ ÓÁÍÏÅ Ñ×ÌÑÅÔÓÑ ÐÒÁ×ÄÏÊ ÄÌÑ ÓÔÒÏË require_distribution É require_group.

óÌÅÄÕÀÝÁÑ ÓÔÒÏËÁ ÜÔÏ ÓÔÒÏËÁ distribution. ÷Ù ÍÏÖÅÔÅ ÏÐÒÅÄÅÌÉÔØ ÅÅ ÚÄÅÓØ ÉÌÉ ÐÏÚÖÅ × ÚÁÇÏÌÏ×ËÅ spec-ÆÁÊÌÁ. ðÒÉ ÐÏÓÔÒÏÅÎÉÉ ÐÁËÅÔÁ ÄÌÑ ÏÓÏÂÏÇÏ ÄÉÓÔÒÉÂÕÔÉ×Á ÜÔÏ ÈÏÒÏÛÁÑ ÉÄÅÑ ÕÂÅÄÉÔØÓÑ ÞÔÏ ÓÔÒÏËÁ ÐÒÁ×ÉÌØÎÁ, ÄÁÖÅ ÈÏÔÑ ÏÎÁ ÔÒÅÂÕÅÔÓÑ. óÔÒÏËÁ vendor ÏÂÏÚÎÁÞÁÅÔ ÔÏÖÅ ÓÁÍÏÅ, ÎÏ ÍÏÖÅÔ ÂÙÔØ ÞÅÍ ÕÇÏÄÎÏ (ÎÁÐÒÉÍÅÒ, Joe's Software and Rock Music Emporium).

RPM ÔÁËÖÅ ÓÅÊÞÁÓ ÐÏÄÄÅÒÖËÕ ÄÌÑ ÐÏÓÔÒÏÅÎÉÑ ÐÁËÅÔÏ× ÄÌÑ ÍÎÏÖÅÓÔ×ÅÎÎÙÈ ÁÒÈÉÔÅËÔÕÒ. æÁÊÌ rpmrc ÍÏÖÅÔ ÓÏÄÅÒÖÁÔØ ÐÅÒÅÍÅÎÎÕÀ ``optflags'' ÄÌÑ ÐÏÓÔÒÏÅÎÉÑ ×ÅÝÅÊ, ËÏÔÏÒÙÅ ÔÒÅÂÕÀÔ ÓÐÅÃÉÆÉÞÅÓËÉÈ ÄÌÑ ÄÁÎÎÏÊ ÁÒÈÉÔÅËÔÕÒÙ ÆÌÁÇÏ× ÄÌÑ ÐÏÓÔÒÏÅÎÉÑ. óÍÏÔÒÉÔÅ ÓÌÅÄÕÀÝÉÅ ÒÁÚÄÅÌÙ ÄÌÑ ÏÐÉÓÁÎÉÑ ËÁË ÉÓÐÏÌØÚÏ×ÁÔØ ÜÔÕ ÐÅÒÅÍÅÎÎÕÀ.

÷ ÄÏÂÁ×ÌÅÎÉÅ Ë ×ÙÛÅÐÒÉ×ÅÄÅÎÎÙÍ ÍÁËÒÏÓÁÍ, ÓÕÝÅÓÔ×ÕÅÔ ÅÝÅ ÎÅÓËÏÌØËÏ. ÷Ù ÍÏÖÅÔÅ ÉÓÐÏÌØÚÏ×ÁÔØ:

rpm --showrc
ÞÔÏÂÙ Õ×ÉÄÅÔØ ËÁËÉÅ ÚÎÁÞÅÎÉÑ ÕÓÔÁÎÏ×ÌÅÎÙ Õ ×ÁÓ É ËÁËÉÅ ÆÌÁÇÉ ÄÏÓÔÕÐÎÙ.

6.2 Spec-ÆÁÊÌ

íÙ ÎÁÞÎÅÍ Ó ÏÂÓÕÖÄÅÎÉÑ spec-ÆÁÊÌÁ. Spec-ÆÁÊÌ ÔÒÅÂÕÅÔÓÑ ÄÌÑ ÐÏÓÔÒÏÅÎÉÑ ÐÁËÅÔÁ. Spec-ÆÁÊÌ ÜÔÏ ÏÐÉÓÁÎÉÅ ÐÒÏÇÒÁÍÍÎÏÇÏ ÏÂÅÓÐÅÞÅÎÉÑ ×ÍÅÓÔÅ Ó ÉÎÓÔÒÕËÃÉÑÍÉ ËÁË ÐÏÓÔÒÏÉÔØ ÐÁËÅÔ É ÓÐÉÓËÏÍ ÆÁÊÌÏ× ÄÌÑ ×ÓÅÈ ÕÓÔÁÎÁ×ÌÉ×ÁÅÍÙÈ ÆÁÊÌÏ×.

÷Ù ÍÏÖÅÔÅ ÚÁÈÏÔÅÔØ ÎÁÚ×ÁÔØ ×ÁÛ spec-ÆÁÊÌ ÓÏÇÌÁÓÎÏ ÓÔÁÎÄÁÒÔÎÏÍÕ ÓÏÇÌÁÛÅÎÉÀ. éÍÑ ÄÏÌÖÎÏ ÂÙÔØ ÓÌÅÄÕÀÝÉÍ: ÉÍÑ ÐÁËÅÔÁ-ÔÉÒÅ-ÎÏÍÅÒ ×ÅÒÓÉÉ-ÔÉÒÅ-ÎÏÍÅÒ ×ÙÐÕÓËÁ (ÒÅÌÉÚ)-ÔÏÞËÁ-spec.

úÄÅÓØ ÐÒÉ×ÅÄÅÎ ÍÁÌÅÎØËÉÊ spec-ÆÁÊÌ (vim-3.0-1.spec):

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 úÁÇÏÌÏ×ÏË

úÁÇÏÌÏ×ÏË ÉÍÅÅÔ ÎÅÓËÏÌØËÏ ÓÔÁÎÄÁÒÔÎÙÈ ÐÏÌÅÊ, ËÏÔÏÒÙÅ ×ÁÍ ÎÅÏÂÈÏÄÉÍÏ ÚÁÐÏÌÎÉÔØ. ôÁËÖÅ ÓÕÝÅÓÔ×ÕÅÔ ÎÅÓËÏÌØËÏ ÐÒÅÄÏÓÔÅÒÅÖÅÎÉÊ. ðÏÌÑ ÄÏÌÖÎÙ ÂÙÔØ ÚÁÐÏÌÎÅÎÙ ËÁË ÐÏËÁÚÁÎÏ:

6.4 òÁÚÄÅÌ Prep

üÔÏ ×ÔÏÒÏÊ ÒÁÚÄÅÌ × spec-ÆÁÊÌÅ. ïÎ ÉÓÐÏÌØÚÕÅÔÓÑ ÞÔÏÂÙ ÓÄÅÌÁÔØ ÉÓÈÏÄÎÙÅ ÔÅËÓÔÙ ÇÏÔÏ×ÙÍÉ Ë ÐÏÓÔÒÏÅÎÉÀ. úÄÅÓØ ×ÁÍ ÎÅÏÂÈÏÄÉÍÏ ÓÄÅÌÁÔØ ×ÓÅ ÞÔÏ ÕÇÏÄÎÏ ÞÔÏÂÙ ÓÄÅÌÁÔØ ÉÓÐÒÁ×ÌÅÎÉÑ × ÉÓÈÏÄÎÙÈ ÔÅËÓÔÁÈ É ÓÄÅÌÁÔØ ÎÁÓÔÒÏÊËÕ ÐÏÄÏÂÎÕÀ ÔÏÊ, ËÏÔÏÒÕÀ ÎÅÏÂÈÏÄÉÍÏ ÓÄÅÌÁÔØ ÞÔÏÂÙ ×ÙÐÏÌÎÉÔØ make.

ïÄÎÏ ÚÁÍÅÞÁÎÉÅ: ëÁÖÄÙÊ ÉÚ ÜÔÉÈ ÒÁÚÄÅÌÏ× × ÄÅÊÓÔ×ÉÔÅÌØÎÏÓÔÉ ÐÒÏÓÔÏ ÍÅÓÔÏ ÄÌÑ ×ÙÐÏÌÎÅÎÉÑ ÓËÒÉÐÔÏ× ÏÂÏÌÏÞËÉ. ÷Ù ÄÏÌÖÎÙ ÐÒÏÓÔÏ ÓÄÅÌÁÔØ sh-ÓËÒÉÐÔ É ÐÏÍÅÓÔÉÔØ ÅÇÏ ÐÏÓÌÅ ÔÁÇÁ %prep ÄÌÑ ÒÁÓÐÁËÏ×ËÉ É ÉÓÐÒÁ×ÌÅÎÉÑ ×ÁÛÉÈ ÉÓÈÏÄÎÙÈ ÔÅËÓÔÏ×. ïÄÎÁËÏ ÍÙ ÄÏÂÁ×ÉÌÉ ÍÁËÒÏÓÙ ÞÔÏÂÙ ÐÏÍÏÞØ ×ÁÍ ÓÄÅÌÁÔØ ÜÔÏ.

ðÅÒ×ÙÊ ÉÚ ÜÔÉÈ ÍÁËÒÏÓÏ× ÜÔÏ ÍÁËÒÏÓ %setup. ÷ Ó×ÏÅÊ ÐÒÏÓÔÅÊÛÅÊ ÆÏÒÍÅ (ÂÅÚ ËÏÍÁÎÄÎÏÊ ÓÔÒÏËÉ), ÏÎ ÐÒÏÓÔÏ ÒÁÓÐÁËÏ×Ù×ÁÅÔ ÉÓÈÏÄÎÙÅ ÔÅËÓÔÙ É ÄÅÌÁÅÔ cd × ÄÉÒÅËÔÏÒÉÀ ÉÓÈÏÄÎÙÈ ÔÅËÓÔÏ×. ïÎ ÔÁËÖÅ ÐÒÉÎÉÍÁÅÔ ÓÌÅÄÕÀÝÉÅ ÏÐÃÉÉ:

óÌÅÄÕÀÝÉÊ ÉÚ ÉÍÅÀÝÉÈÓÑ ÍÁËÒÏÓÏ× ÜÔÏ ÍÁËÒÏÓ %patch. üÔÏÔ ÍÁËÒÏÓ ÐÏÍÏÇÁÅÔ Á×ÔÏÍÁÔÉÚÉÒÏ×ÁÔØ ÐÒÏÃÅÓÓ ÎÁÌÏÖÅÎÉÑ ÚÁÐÌÁÔÏË ÎÁ ÉÓÈÏÄÎÙÅ ÔÅËÓÔÙ. íÁËÒÏÓ ÉÍÅÅÔ ÎÅÓËÏÌØËÏ ÏÐÃÉÊ, ÐÅÒÅÞÉÓÌÅÎÎÙÈ ÎÉÖÅ:

üÔÏ ×ÓÅ ÍÁËÒÏÓÙ ËÏÔÏÒÙÅ ×ÁÍ ÎÅÏÂÈÏÄÉÍÙ. ðÏÓÌÅ ÔÏÇÏ ËÁË ×Ù ×ÓÅ ÓÄÅÌÁÅÔÅ ÐÒÁ×ÉÌØÎÏ, ×Ù ÔÁËÖÅ ÍÏÖÅÔÅ ÓÄÅÌÁÔØ ÌÀÂÕÀ ÄÒÕÇÕÀ ÎÁÓÔÒÏÊËÕ, ËÏÔÏÒÁÑ ÎÅÏÂÈÏÄÉÍÁ, ÉÓÐÏÌØÚÕÑ ÓËÒÉÐÔÙ ÎÁ sh. ÷ÓÅ ÞÔÏ ×Ù ×ËÌÀÞÉÔÅ ÄÏ ÍÁËÒÏÓÁ %build (ÏÂÓÕÖÄÁÅÍÏÇÏ × ÓÌÅÄÕÀÝÅÍ ÒÁÚÄÅÌÅ) ×ÙÐÏÌÎÑÅÔÓÑ ÞÅÒÅÚ sh. ðÏÓÍÏÔÒÉÔÅ × ×ÙÛÅÐÒÉ×ÅÄÅÎÎÏÍ ÒÁÚÄÅÌÅ ÄÌÑ ÔÏÇÏ ÞÔÏÂÙ Õ×ÉÄÅÔØ ËÁËÉÅ ×ÅÝÉ ×Ù ÍÏÖÅÔÅ ÓÄÅÌÁÔØ ÅÓÌÉ ÚÁÈÏÔÉÔÅ.

6.5 òÁÚÄÅÌ Build

äÌÑ ÜÔÏÇÏ ÒÁÚÄÅÌÁ ÎÅÔ ÎÉËÁËÉÈ ÍÁËÒÏÓÏ×. ÷Ù ÄÏÌÖÎÙ ÐÒÏÓÔÏ ÐÏÍÅÓÔÉÔØ ÚÄÅÓØ ÌÀÂÙÅ ËÏÍÁÎÄÙ ËÏÔÏÒÙÅ ×ÁÍ ÎÅÏÂÈÏÄÉÍÏ ×ÙÐÏÌÎÉÔØ ÄÌÑ ÐÏÓÔÒÏÅÎÉÑ ÐÒÏÇÒÁÍÍÎÏÇÏ ÏÂÅÓÐÅÞÅÎÉÑ ÐÏÓÌÅ ÔÏÇÏ ËÁË ×Ù ÒÁÓÐÁËÏ×ÁÌÉ ÉÓÈÏÄÎÙÅ ÔÅËÓÔÙ, ÉÚÍÅÎÉÌÉ ÉÈ Ó ÐÏÍÏÝØÀ ÚÁÐÌÁÔÏË É ×ÏÛÌÉ × ÄÉÒÅËÔÏÒÉÀ. üÔÏ ÐÒÏÓÔÏ ÄÒÕÇÏÊ ÎÁÂÏÒ ËÏÍÁÎÄ ÐÅÒÅÄÁ×ÁÅÍÙÈ sh, ÔÁË ÞÔÏ ÌÀÂÙÅ ËÏÍÁÎÄÙ sh ÍÏÇÕÔ ÂÙÔØ ÚÄÅÓØ (×ËÌÀÞÁÑ ËÏÍÍÅÎÔÁÒÉÉ) ÷ÁÛÁ ÔÅËÕÝÁÑ ÄÉÒÅËÔÏÒÉÑ ÕÓÔÁÎÁ×ÌÉ×ÁÅÔÓÑ × ËÁÖÄÏÍ ÉÚ ÜÔÉÈ ÒÁÚÄÅÌÏ× × ËÏÒÎÅ×ÕÀ ÄÉÒÅËÔÏÒÉÀ ÄÌÑ ÉÓÈÏÄÎÙÈ ÔÅËÓÔÏ×, ÔÁË ÞÔÏ ÐÏÍÎÉÔÅ ÜÔÏ. ÷Ù ÍÏÖÅÔÅ ÐÅÒÅÈÏÄÉÔØ × ÐÏÄÄÉÒÅËÔÏÒÉÉ ÅÓÌÉ ÜÔÏ ÎÅÏÂÈÏÄÉÍÏ.

6.6 òÁÚÄÅÌ Install

÷ ÜÔÏÍ ÒÁÚÄÅÌÅ ÔÁËÖÅ ÎÅÔ ÎÉËÁËÉÈ ÍÁËÒÏÓÏ×. ÷ÁÍ ÐÒÏÓÔÏ ÎÅÏÂÈÏÄÉÍÏ ÐÏÍÅÓÔÉÔØ ËÏÍÁÎÄÙ ÎÅÏÂÈÏÄÉÍÙÅ ÄÌÑ ÕÓÔÁÎÏ×ËÉ. åÓÌÉ ÄÌÑ ×ÁÛÅÇÏ ÐÁËÅÔÁ ÓÕÝÅÓÔ×ÕÅÔ ËÏÍÁÎÄÁ make install, ÔÏ ÐÒÏÓÔÏ ÐÏÍÅÓÔÉÔÅ ÅÅ ÚÄÅÓØ. åÓÌÉ ÅÅ ÎÅÔ, ÔÏ ×Ù ÍÏÖÅÔÅ ÓÄÅÌÁÔØ ÚÁÐÌÁÔËÕ ÄÌÑ makefile, ÞÔÏÂÙ ×ÙÐÏÌÎÑÌÁÓØ ËÏÍÁÎÄÁ make install É ÐÒÏÓÔÏ ÄÅÌÁÔØ ÚÄÅÓØ make install, ÉÌÉ ×Ù ÍÏÖÅÔÅ ×ÒÕÞÎÕÀ ÕÓÔÁÎÁ×ÌÉ×ÁÔØ ÐÁËÅÔ Ó ÐÏÍÏÝØÀ ËÏÍÁÎÄ sh. ÷Ù ÍÏÖÅÔÅ ÓÞÉÔÁÔØ Ó×ÏÀ ÔÅËÕÝÕÀ ÄÉÒÅËÔÏÒÉÀ ËÁË ËÏÒÎÅ×ÕÀ ÄÉÒÅËÔÏÒÉÀ ÄÌÑ ÉÓÈÏÄÎÙÈ ÔÅËÓÔÏ× ÐÁËÅÔÁ.

6.7 ïÐÃÉÏÎÁÌØÎÙÅ ÓËÒÉÐÔÙ ×ÙÐÏÌÎÑÅÍÙÅ ÄÏ É ÐÏÓÌÅÕÓÔÁÎÏ×ËÉ/ÕÄÁÌÅÎÉÑ ÐÁËÅÔÁ

÷Ù ÍÏÖÅÔÅ ÐÏÍÅÓÔÉÔØ ÓËÒÉÐÔÙ ËÏÔÏÒÙÅ ÚÁÐÕÓÔÑÔÓÑ ÄÏ É ÐÏÓÌÅ ÉÎÓÔÁÌÌÑÃÉÉ É ÄÅÉÎÓÔÁÌÌÑÃÉÉ Ä×ÏÉÞÎÏÇÏ ÐÁËÅÔÁ. ïÓÎÏ×ÎÁÑ ÐÒÉÞÉÎÁ ÄÌÑ ÜÔÏÇÏ -- ÜÔÏ ×ÙÐÏÌÎÅÎÉÅ ×ÅÝÅÊ ÐÏÄÏÂÎÙÈ ÚÁÐÕÓËÕ ldconfig ÐÏÓÌÅ ÕÓÔÁÎÏ×ËÉ ÉÌÉ ÕÄÁÌÅÎÉÑ ÐÁËÅÔÁ, ËÏÔÏÒÙÊ ÓÏÄÅÒÖÉÔ ÒÁÚÄÅÌÑÅÍÙÅ ÂÉÂÌÉÏÔÅËÉ. íÁËÒÏÓÙ ÄÌÑ ËÁÖÄÏÇÏ ÉÚ ÓËÒÉÐÔÏ× ÐÒÉ×ÅÄÅÎÙ ËÁË ÐÏËÁÚÁÎÏ:

óÏÄÅÒÖÉÍÙÍ ÒÁÚÄÅÌÏ× ÄÏÌÖÎÙ ÂÙÔØ ÌÀÂÙÅ sh ÓËÒÉÐÔÙ, ÈÏÔÑ ×ÁÍ ÎÅ ÎÕÖÎÏ ÏÐÒÅÄÅÌÑÔØ ÓÔÒÏËÕ #!/bin/sh.

6.8 òÁÚÄÅÌ Files

üÔÏ ÒÁÚÄÅÌ ÇÄÅ ×Ù ÄÏÌÖÎÙ ÐÅÒÅÞÉÓÌÉÔØ ÆÁÊÌÙ ÄÌÑ Ä×ÏÉÞÎÏÇÏ ÐÁËÅÔÁ. õ RPM ÎÅÔ ÓÐÏÓÏÂÁ ÕÚÎÁÔØ ËÁËÉÅ Ä×ÏÉÞÎÙÅ ÆÁÊÌÙ ÕÓÔÁÎÏ×ÌÅÎÙ ËÁË ÒÅÚÕÌØÔÁÔ ×ÙÐÏÌÎÅÎÉÑ make install. îå ÓÕÝÅÓÔ×ÕÅÔ ÓÐÏÓÏÂÁ ÓÄÅÌÁÔØ ÜÔÏ. îÅËÏÔÏÒÙÅ ÐÒÅÄÌÁÇÁÀÔ ×ÙÐÏÌÎÉÔØ ËÏÍÁÎÄÕ find ÄÏ É ÐÏÓÌÅ ÕÓÔÁÎÏ×ËÉ ÐÁËÅÔÁ. îÁ ÍÎÏÇÏÐÏÌØÚÏ×ÁÔÅÌØÓËÏÊ ÓÉÓÔÅÍÅ ÜÔÏ ÎÅÐÒÉÅÍÌÅÍÏ ÔÁË ËÁË ÄÒÕÇÉÅ ÆÁÊÌÙ ÍÏÇÕÔ ÂÙÔØ ÓÏÚÄÁÎÙ × ÔÅÞÅÎÉÉ ÐÒÏÃÅÓÓÁ ÐÏÓÔÒÏÅÎÉÑ ÐÁËÅÔÁ, ËÏÔÏÒÙÅ ÎÅ ÉÍÅÀÔ ÎÉÞÅÇÏ ÏÂÝÅÇÏ Ó ÓÁÍÉÍ ÐÁËÅÔÏÍ.

åÓÔØ ÎÅÓËÏÌØËÏ ÄÏÓÔÕÐÎÙÈ ÍÁËÒÏÓÏ× ÄÌÑ ×ÙÐÏÌÎÅÎÉÑ ÓÐÅÃÉÁÌØÎÙÈ ÄÅÊÓÔ×ÉÊ. ïÎÉ ÐÅÒÅÞÉÓÌÅÎÙ É ÏÐÉÓÁÎÙ ÚÄÅÓØ:

îÁÉÂÏÌØÛÏÅ ÐÒÅÄÏÓÔÅÒÅÖÅÎÉÅ × ÓÐÉÓËÅ ÆÁÊÌÏ× ÜÔÏ ÐÅÒÅÞÉÓÌÅÎÉÅ ÄÉÒÅËÔÏÒÉÊ. åÓÌÉ ×Ù ÓÌÕÞÁÊÎÏ ÕËÁÖÅÔÅ /usr/bin, ÔÏ ×ÁÛ Ä×ÏÉÞÎÙÊ ÐÁËÅÔ ÂÕÄÅÔ ÓÏÄÅÒÖÁÔØ ×ÓÅ ÆÁÊÌÙ × ÄÉÒÅËÔÏÒÉÉ /usr/bin ÎÁ ×ÁÛÅÊ ÓÉÓÔÅÍÅ.

6.9 ðÏÓÔÒÏÅÎÉÅ ÐÁËÅÔÁ

äÅÒÅ×Ï ÄÉÒÅËÔÏÒÉÊ ÉÓÈÏÄÎÙÈ ÔÅËÓÔÏ×

ðÅÒ×ÁÑ ×ÅÝØ ËÏÔÏÒÁÑ ×ÁÍ ÎÅÏÂÈÏÄÉÍÁ -- ÜÔÏ ÐÒÁ×ÉÌØÎÏ ÎÁÓÔÒÏÅÎÎÏÅ ÄÅÒÅ×Ï ÐÏÓÔÒÏÅÎÉÑ. üÔÏ ÎÁÓÔÒÁÉ×ÁÅÔÓÑ ÉÓÐÏÌØÚÕÑ ÆÁÊÌ /etc/rpmrc. âÏÌØÛÉÎÓÔ×Ï ÌÀÄÅÊ ÐÒÏÓÔÏ ÉÓÐÏÌØÚÕÀÔ ÄÉÒÅËÔÏÒÉÀ /usr/src.

÷ÁÍ ÎÁÄÏ ÓÏÚÄÁÔØ ÓÌÅÄÕÀÝÉÅ ÄÉÒÅËÔÏÒÉÉ ÞÔÏÂÙ ÓÏÚÄÁÔØ ÄÅÒÅ×Ï ÐÏÓÔÒÏÅÎÉÑ:

ôÅÓÔÏ×ÏÅ ÐÏÓÔÒÏÅÎÉÅ ÐÁËÅÔÁ

ðÅÒ×ÁÑ ×ÅÝØ ËÏÔÏÒÕÀ ×Ù ×ÅÒÏÑÔÎÏ ÚÁÈÏÔÉÔÅ ÓÄÅÌÁÔØ -- ÜÔÏ ÐÏÓÔÒÏÉÔØ ÉÓÈÏÄÎÙÅ ÔÅËÓÔÙ ÂÅÚ ÉÓÐÏÌØÚÏ×ÁÎÉÑ RPM. þÔÏÂÙ ÓÄÅÌÁÔØ ÜÔÏ ÒÁÓÐÁËÕÊÔÅ ÉÓÈÏÄÎÙÅ ÔÅËÓÔÙ É ÉÚÍÅÎÉÔÅ ÉÍÑ ÄÉÒÅËÔÏÒÉÉ ÎÁ $NAME.orig. úÁÔÅÍ ÅÝÅ ÒÁÚ ÒÁÓÐÁËÕÊÔÅ ÉÓÈÏÄÎÙÅ ÔÅËÓÔÙ. éÓÐÏÌØÚÕÊÔÅ ÜÔÉ ÉÓÈÏÄÎÙÅ ÔÅËÓÔÙ ÄÌÑ ÐÏÓÔÒÏÅÎÉÑ. ðÅÒÅÊÄÉÔÅ × ÄÉÒÅËÔÏÒÉÀ ÉÓÈÏÄÎÙÈ ÔÅËÓÔÏ× É ÓÌÅÄÕÊÔÅ ÉÎÓÔÒÕËÃÉÑÍ ÐÏ ÉÈ ÐÏÓÔÒÏÅÎÉÀ. åÓÌÉ ×Ù ÞÔÏ-ÔÏ ÒÅÄÁËÔÉÒÏ×ÁÌÉ ×ÁÍ ÎÅÏÂÈÏÄÉÍÏ ÓÄÅÌÁÔØ ÚÁÐÌÁÔËÕ. ðÏÓÌÅ ÔÏÇÏ ËÁË ×Ù ÐÏÓÔÒÏÉÌÉ ÉÓÈÏÄÎÙÅ ÔÅËÓÔÙ, ÏÞÉÓÔÉÔÅ ÄÉÒÅËÔÏÒÉÀ ÉÓÈÏÄÎÙÈ ÔÅËÓÔÏ×. õÂÅÄÉÔÅÓØ ÞÔÏ ×Ù ÕÄÁÌÉÌÉ ×ÓÅ ÆÁÊÌÙ ÓÏÚÄÁÎÎÙÅ ÓËÒÉÐÔÏÍ configure. úÁÔÅÍ ÐÅÒÅÊÄÉÔÅ ÉÚ ÄÉÒÅËÔÏÒÉÉ ÉÓÈÏÄÎÙÈ ÔÅËÓÔÏ× × ÄÉÒÅËÔÏÒÉÀ Ñ×ÌÑÀÝÕÀÓÑ ÄÌÑ ÎÉÈ ÒÏÄÉÔÅÌØÓËÏÊ. úÁÔÅÍ ÓÄÅÌÁÊÔÅ ÞÔÏ-ÔÏ ÐÏÄÏÂÎÏÅ:

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

üÔÏ ÓÏÚÄÁÓÔ ÄÌÑ ×ÁÓ ÚÁÐÌÁÔËÕ, ËÏÔÏÒÕÀ ×Ù ÓÍÏÖÅÔÅ ÉÓÐÏÌØÚÏ×ÁÔØ × ×ÁÛÅÍ spec-ÆÁÊÌÅ. úÁÍÅÔÉÍ ÞÔÏ ``linux'', ËÏÔÏÒÙÊ ×Ù ×ÉÄÉÔÅ × ÉÍÅÎÉ ÚÁÐÌÁÔËÉ ÜÔÏ ÐÒÏÓÔÏ ÉÄÅÎÔÉÆÉËÁÔÏÒ. ÷Ù ÍÏÖÅÔÅ ÚÁÈÏÔÅÔØ ÉÓÐÏÌØÚÏ×ÁÔØ ÞÔÏ-ÎÉÂÕÄØ ÂÏÌÅÅ ÏÐÉÓÁÔÅÌØÎÏÅ ËÁË ``config'' ÉÌÉ ``bugs'' ÄÌÑ ÏÐÉÓÁÎÉÑ ÐÏÞÅÍÕ ×Ù ÓÄÅÌÁÌÉ ÜÔÕ ÚÁÐÌÁÔËÕ. ôÁËÖÅ ÈÏÒÏÛÁÑ ÉÄÅÑ ÐÏÓÍÏÔÒÅÔØ × ÆÁÊÌ ÚÁÐÌÁÔËÉ, ËÏÔÏÒÙÊ ×Ù ÓÏÚÄÁÌÉ, ÄÏ ÅÇÏ ÉÓÐÏÌØÚÏ×ÁÎÉÑ ÞÔÏÂÙ ÕÂÅÄÉÔØÓÑ ÞÔÏ ÂÉÎÁÒÎÙÅ ÆÁÊÌÙ ÓÌÕÞÁÊÎÏ ÎÅ ×ËÌÀÞÅÎÙ.

óÏÚÄÁÎÉÅ ÓÐÉÓËÁ ÆÁÊÌÏ×

óÅÊÞÁÓ Õ ×ÁÓ ÅÓÔØ ÉÓÈÏÄÎÙÅ ÔÅËÓÔÙ, ËÏÔÏÒÙÅ ÂÕÄÕÔ ÓÔÒÏÉÔØÓÑ É ×Ù ÚÎÁÅÔÅ ËÁË ÐÏÓÔÒÏÉÔØ É ÕÓÔÁÎÏ×ÉÔØ ÉÈ. ðÏÓÍÏÔÒÉÔÅ × ×Ù×ÏÄ ÕÓÔÁÎÏ×ÏÞÎÏÊ ÐÏÓÌÅÄÏ×ÁÔÅÌØÎÏÓÔÉ É ÐÏÓÔÒÏÊÔÅ ÎÁ ÅÇÏ ÏÓÎÏ×Å ÓÐÉÓÏË ×ÁÛÉÈ ÆÁÊÌÏ× ÄÌÑ ÉÓÐÏÌØÚÏ×ÁÎÉÑ × spec-ÆÁÊÌÅ. íÙ ÏÂÙÞÎÏ ÓÏÚÄÁÅÍ spec-ÆÁÊÌ ÐÁÒÁÌÌÅÌØÎÏ ÓÏ ×ÓÅÍÉ ÏÐÉÓÁÎÎÙÍÉ ÛÁÇÁÍÉ. ÷Ù ÍÏÖÅÔÅ ÓÎÁÞÁÌÁ ÓÏÚÄÁÔØ ÅÇÏ É ÚÁÐÏÌÎÉÔØ ÓÁÍÙÅ ÌÅÇËÉÅ ÅÇÏ ÞÁÓÔÉ, Á ÚÁÔÅÍ ÚÁÔÅÍ ÚÁÐÏÌÎÑÔØ ÅÇÏ ÐÏ ÍÅÒÅ ÐÒÏÈÏÖÄÅÎÉÑ ×ÓÅÈ ÜÔÁÐÏ×.

ðÏÓÔÒÏÅÎÉÅ ÐÁËÅÔÁ Ó ÐÏÍÏÝØÀ RPM

ëÏÇÄÁ ×Ù ÉÍÅÅÔÅ spec-ÆÁÊÌ, ×Ù ÇÏÔÏ×Ù ÐÏÐÙÔÁÔØÓÑ É ÐÏÓÔÒÏÉÔØ ×ÁÛ ÐÁËÅÔ. îÁÉÂÏÌÅÅ ÐÏÌÅÚÎÙÊ ÓÐÏÓÏ ÓÄÅÌÁÔØ ÜÔÏ -- ÉÓÐÏÌØÚÏ×ÁÔØ ËÏÍÁÎÄÕ ÐÏÈÏÖÕÀ ÎÁ ÓÌÅÄÕÀÝÕÀ:

        rpm -ba foobar-1.0.spec

ôÁËÖÅ ÓÕÝÅÓÔ×ÕÀÔ ÄÒÕÇÉÅ ÏÐÃÉÉ ÐÏÌÅÚÎÙÅ Ó ÐÅÒÅËÌÀÞÁÔÅÌÅÍ -b:

óÕÝÅÓÔ×ÕÅÔ ÎÅÓËÏÌØËÏ ÍÏÄÉÆÉËÁÔÏÒÏ× Ë ÐÅÒÅËÌÀÞÁÔÅÌÀ -b. üÔÏ:

6.10 ôÅÓÔÉÒÏ×ÁÎÉÅ ÐÁËÅÔÁ

ðÏÓÌÅ ÔÏÇÏ ËÁË ×Ù ÐÏÓÔÒÏÉÌÉ Ä×ÏÉÞÎÙÊ ÐÁËÅÔ É ÐÁËÅÔ Ó ÉÓÈÏÄÎÙÍ ËÏÄÏÍ, ×ÁÍ ÎÅÏÂÈÏÄÉÍÏ ÐÒÏ×ÅÒÉÔØ ÉÈ. óÁÍÙÊ ÌÅÇËÉÊ É ÎÁÉÌÕÞÛÉÊ ÓÐÏÓÏ --- ÜÔÏ ÉÓÐÏÌØÚÏ×ÁÔØ ÄÌÑ ÔÅÓÔÉÒÏ×ÁÎÉÑ ÉÓÐÏÌØÚÏ×ÁÔØ ÄÒÕÇÏÀ ÍÁÛÉÎÕ, Á ÎÅ ÔÕ ÎÁ ËÏÔÏÒÏÊ ×Ù ÓÏÚÄÁ×ÁÌÉ ÐÁËÅÔ. ðÏÓÌÅ ×ÓÅÇÏ ×ÁÍ ÔÏÌØËÏ ÌÉÛØ ÎÁÄÏ ×ÙÐÏÌÎÉÔØ ÎÅÓËÏÌØËÏ ËÏÍÁÎÄ make install ÎÁ ×ÁÛÅÊ ÍÁÛÉÎÅ, ÔÁË ÞÔÏ ×ÓÅ ÄÏÌÖÎÏ ÂÙÔØ ÕÓÔÁÎÏ×ÌÅÎÏ.

÷Ù ÍÏÖÅÔÅ ×ÙÐÏÌÎÉÔØ rpm -u packagename ÄÌÑ ÔÅÓÔÉÒÏ×ÁÎÉÑ ÐÁËÅÔÁ, ÎÏ ÜÔÏ ÍÏÖÅÔ ÂÙÔØ ÏÂÍÁÎÙ×ÁÀÝÉÍ ÐÏÔÏÍÕ-ÞÔÏ × ÐÒÏÃÅÓÓÅ ÐÏÓÔÒÏÅÎÉÑ ÐÁËÅÔÁ ×Ù ÄÅÌÁÌÉ make install. åÓÌÉ ×Ù ÐÒÏÐÕÓÔÉÔÅ ÞÔÏ-ÎÉÂÕÄØ × Ó×ÏÅÍ ÓÐÉÓËÅ ÆÁÊÌÏ×, ÜÔÏ ÎÅ ÂÕÄÅÔ ÕÄÁÌÅÎÏ ÐÒÉ ÉÎÓÔÁÌÌÑÃÉÉ. åÓÌÉ ×Ù ÚÁÔÅÍ ÂÕÄÅÔÅ ÐÅÒÅÓÔÁ×ÌÑÔØ Ä×ÏÉÞÎÙÊ ÐÁËÅÔ, ÔÏ ×ÓÅ ÎÁ ×ÁÛÅÊ ÓÉÓÔÅÍÅ ÂÕÄÅÔ × ÎÏÒÍÅ, ÎÏ ÓÁÍ ÐÁËÅÔ ÎÅ ÂÕÄÅÔ ÐÏÌÎÙÍ. âÕÄØÔÅ Õ×ÅÒÅÎÎÙÍÉ É ÐÏÍÎÉÔÅ, ÞÔÏ ÅÓÌÉ ×Ù ÄÅÌÁÌÉ rpm -ba package, ÔÏ ÂÏÌØÛÉÎÓÔ×Ï ÌÀÄÅÊ ÂÕÄÕÔ ÕÓÔÁÎÁ×ÌÉ×ÁÔØ ×ÁÛ ÐÁËÅÔ ×ÙÐÏÌÎÑÑ ÌÉÛØ ËÏÍÁÎÄÕ rpm -i package. âÕÄØÔÅ Õ×ÅÒÅÎÙ, ÞÔÏ ×Ù ÎÅ ÄÅÌÁÅÔÅ ÎÉÞÅÇÏ × ÒÁÚÄÅÌÁÈ build ÉÌÉ install, ÞÔÏ ÄÏÌÖÎÏ ÂÕÄÅÔ ÂÙÔØ ÓÄÅÌÁÎÏ ÐÒÉ ÕÓÔÁÎÏ×ËÅ ÔÏÌØËÏ Ä×ÏÉÞÎÏÇÏ ÐÁËÅÔÁ.

6.11 þÔÏ ÄÅÌÁÔØ Ó ×ÁÛÉÍ ÎÏ×ÙÍ ÐÁËÅÔÏÍ RPMs

ðÏÓÌÅ ÔÏÇÏ ËÁË ×Ù ÓÄÅÌÁÌÉ Ó×ÏÊ ÓÏÂÓÔ×ÅÎÎÙÊ ÐÁËÅÔ RPM ÉÚ ÞÅÇÏ-ÌÉÂÏ (ÐÒÅÄÐÏÌÁÇÁÑ ÞÔÏ ÜÔÏÇÏ ÅÝÅ ÎÅÔ × ×ÉÄÅ RPM) ×Ù ÍÏÖÅÔÅ ÐÒÅÄÌÁÇÁÔØ Ó×ÏÀ ÒÁÂÏÔÕ ÄÒÕÇÉÍ ÌÀÄÑÍ (ÔÁËÖÅ ÐÒÅÄÐÏÌÁÇÁÑ, ÞÔÏ ×ÁÛ RPM Ó×ÏÂÏÄÎÏ ÒÁÓÐÒÏÓÔÒÁÎÑÅÍÙÊ). þÔÏÂÙ ÓÄÅÌÁÔØ ÜÔÏ ×Ù ÍÏÖÅÔÅ ÚÁÈÏÔÅÔØ ÚÁÇÒÕÚÉÔØ ÐÁËÅÔ ÎÁ ÓÅÒ×ÅÒ ftp.redhat.com.

6.12 þÔÏ ÔÅÐÅÒØ?

ðÏÖÁÌÕÊÓÔÁ ÓÍÏÔÒÉÔÅ ×ÙÛÅ ÒÁÚÄÅÌÙ "ôÅÓÔÉÒÏ×ÁÎÉÅ ÐÁËÅÔÁ" É "þÔÏ ÄÅÌÁÔØ Ó ×ÁÛÉÍ ÎÏ×ÙÍ ÐÁËÅÔÏÍ RPM". íÙ ÈÏÔÉÍ ÓÄÅÌÁÔØ ÄÏÓÔÕÐÎÙÍÉ ×ÓÅ ÐÁËÅÔÙ RPM ËÏÔÏÒÙÅ ÍÙ ÍÏÖÅÍ ÐÏÌÕÞÉÔØ É ÈÏÔÉÍ ÞÔÏÂÙ ÜÔÏ ÂÙÌÉ ÈÏÒÏÛÏ ÓÄÅÌÁÎÎÙÅ ÐÁËÅÔÙ. ðÏÖÁÌÕÊÓÔÁ ÎÁÊÄÉÔÅ ×ÒÅÍÑ ÄÌÑ ÈÏÒÏÛÅÇÏ ÔÅÓÔÉÒÏ×ÁÎÉÑ ÐÁËÅÔÏ× É ÎÁÊÄÉÔÅ ×ÒÅÍÑ ÄÌÑ ÉÈ ÚÁÇÒÕÚËÉ ÄÌÑ ÏÂÝÅÊ ×ÙÇÏÄÙ. ôÁËÖÅ ÐÏÖÁÌÕÊÓÔÁ ÂÕÄØÔÅ Õ×ÅÒÅÎÙ, ÞÔÏ ×Ù ÚÁÇÒÕÖÁÅÔÅ ÔÏÌØËÏ Ó×ÏÂÏÄÎÏ ÒÁÓÐÒÏÓÔÒÁÎÑÅÍÏÅ ÐÒÏÇÒÁÍÍÎÏÅ ÏÂÅÓÐÅÞÅÎÉÅ. ëÏÍÍÅÒÞÅÓËÏÅ ÐÒÏÇÒÁÍÍÎÏÅ ÏÂÅÓÐÅÞÅÎÉÅ É shareware ÎÅ ÄÏÌÖÎÙ ÂÙÔØ ÚÁÇÒÕÖÅÎÙ ÄÏ ÔÅÈ ÐÏÒ ÐÏËÁ ÎÅ ÂÕÄÕÔ ÉÍÅÔØ Á×ÔÏÒÓËÉÅ ÐÒÁ×Á, ËÏÔÏÒÙÅ ÏÐÒÅÄÅÌÅÎÎÏ ËÏÎÓÔÁÔÉÒÕÀÔ ÞÔÏ ÜÔÏ ÒÁÚÒÅÛÅÎÏ. üÔÏ ×ËÌÀÞÁÅÔ ÐÒÏÇÒÁÍÍÎÏÅ ÏÂÅÓÐÅÞÅÎÉÅ Netscape, ssh, pgp, É Ô.Ð.

7. ðÏÓÔÒÏÅÎÉÅ RPM ÄÌÑ ÎÅÓËÏÌØËÉÈ ÁÒÈÉÔÅËÔÕÒ

óÅÊÞÁÓ RPM ÍÏÖÅÔ ÉÓÐÏÌØÚÏ×ÁÔØÓÑ ÄÌÑ ÐÏÓÔÒÏÅÎÉÑ ÐÁËÅÔÏ× ÄÌÑ Intel i386, Digital Alpha Ó ÒÁÂÏÔÁÀÝÉÍ Linux É the Sparc. ôÁËÖÅ ÂÙÌÏ ÓÏÏÂÝÅÎÏ, ÞÔÏ RPM ÒÁÂÏÔÁÅÔ ÎÁ SGI É ÒÁÂÏÞÉÈ ÓÔÁÎÃÉÑÈ HP. óÕÝÅÓÔ×ÕÅÔ ÎÅÓËÏÌØËÏ Ó×ÏÊÓÔ×, ËÏÔÏÒÙÅ ÄÅÌÁÀÔ ÐÏÓÔÒÏÅÎÉÅ ÐÁËÅÔÏ× ÎÅ ×ÓÅÈ ÐÌÁÔÆÏÒÍÁÈ ÌÅÇËÉÍ. ðÅÒ×ÏÅ ÉÚ ÜÔÉÈ Ó×ÏÊÓÔ× ÜÔÏ ÄÉÒÅËÔÉ×Á ``optflags'' × ÆÁÊÌÅ /etc/rpmrc. ïÎÁ ÍÏÖÅÔ ÂÙÔØ ÉÓÐÏÌØÚÏ×ÁÎÁ ÄÌÑ ÕÓÔÁÎÏ×ËÉ ÉÓÐÏÌØÚÕÅÍÙÈ ÄÌÑ ÐÏÓÔÒÏÅÎÉÑ ÐÒÏÇÒÁÍÍÎÏÇÏ ÏÂÅÓÐÅÞÅÎÉÑ ÆÌÁÇÏ× × ÚÎÁÞÅÎÉÑ ÓÏÏÔ×ÅÔÓÔ×ÕÀÝÉÅ ÏÐÒÅÄÅÌÅÎÎÏÊ ÁÒÈÉÔÅËÔÕÒÅ. äÒÕÇÏÅ Ó×ÏÊÓÔ×Ï ÜÔÏ ÍÁËÒÏÓ ``arch'' × spec-ÆÁÊÌÅ. ïÎÏ ÍÏÖÅÔ ÂÙÔØ ÉÓÐÏÌØÚÏ×ÁÎÁ ÞÔÏÂÙ ÄÅÌÁÔØ ÒÁÚÎÙÅ ×ÅÝÉ × ÚÁ×ÉÓÉÍÏÓÔÉ ÏÔ ÁÒÈÉÔÅËÔÕÒÙ ÎÁ ËÏÔÏÒÏÊ ÐÒÏÉÚ×ÏÄÉÔÓÑ ÐÏÓÔÏÒÏÎÎÉÅ. åÝÅ ÏÄÎÏ Ó×ÏÊÓÔ×Ï ÜÔÏ ÄÉÒÅËÔÉ×Á ``Exclude'' × ÚÁÇÏÌÏ×ËÅ.

7.1 ðÒÏÓÔÏÊ spec-ÆÁÊÌ

óÌÅÄÕÀÝÁÑ ÉÎÆÏÒÍÁÃÉÑ ÜÔÏ ÞÁÓÔØ spec-ÆÁÊÌÁ ÄÌÑ ÐÁËÅÔÁ ``fileutils''. ïÎ ÎÁÓÔÒÏÅÎ ÄÌÑ ÐÏÓÔÒÏÅÎÉÑ É ÎÁ Alpha É ÎÁ Intel ÐÌÁÔÆÏÒÍÁÈ.

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

÷ ÜÔÏÍ ÐÒÉÍÅÒÅ ×Ù ×ÉÄÉÔÅ ËÁË ÄÉÒÅËÔÉ×Á ``optflags'' ÉÓÐÏÌØÚÕÅÔÓÑ ÉÚ ÆÁÊÌÁ /etc/rpmrc. ÷ ÚÁ×ÉÓÉÍÏÓÔÉ ÏÔ ÔÏÇÏ ÎÁ ËÁËÏÊ ÁÒÈÉÔÅËÔÕÒÅ ×Ù ÐÒÏÉÚ×ÏÄÉÔÅ ÐÏÓÔÒÏÅÎÉÅ, ÓÏÏÔ×ÅÔÓÔ×ÕÀÝÅÅ ÚÎÁÞÅÎÉÅ ÄÁÅÔÓÑ ÐÅÒÅÍÅÎÎÏÊ RPM_OPT_FLAGS. ÷Ù ÄÏÌÖÎÙ ÉÚÍÅÎÉÔØ Makefile ×ÁÛÅÇÏ ÐÁËÅÔÁ ÄÌÑ ÉÓÐÏÌØÚÏ×ÁÎÉÑ ÜÔÏÊ ÐÅÒÅÍÅÎÎÏÊ ×ÍÅÓÔÏ ÄÉÒÅËÔÉ×, ËÏÔÏÒÙÅ ×Ù ÍÏÇÌÉ ÂÙ ÉÓÐÏÌØÚÏ×ÁÔØ (ÐÏÄÏÂÎÏ ÄÉÒÅËÔÉ×ÁÍ -m486 É -O2). ÷Ù ÍÏÖÅÔÅ ÌÕÞÛÅ ÐÏÞÕ×ÓÔ×Ï×ÁÔØ ÞÔÏ ÎÁÄÏ ÓÄÅÌÁÔØ ÅÓÌÉ ÚÁÇÒÕÚÉÔÅ ÜÔÏÔ ÐÁËÅÔ Ó ÉÓÈÏÄÎÙÍÉ ÔÅËÓÔÁÍÉ, ÒÁÓÐÁËÕÊÔÅ ÉÓÈÏÄÎÙÅ ÔÅËÓÔÙ É ÐÏÓÍÏÔÒÉÔÅ ÎÁ Makefile. úÁÔÅÍ ÐÏÓÍÏÔÒÉÔÅ ÎÁ ÚÁÐÌÁÔËÕ ÄÌÑ Makefile É ×Ù Õ×ÉÄÉÔÅ ËÁËÉÅ ÉÚÍÅÎÅÎÉÑ ÄÏÌÖÎÙ ÂÙÔØ ÓÄÅÌÁÎÙ.

7.3 íÁËÒÏÓÙ

íÁËÒÏÓ %ifarch ÏÞÅÎØ ×ÁÖÅÎ. ïÞÅÎØ ÞÁÓÔÏ ×ÁÍ ÎÅÏÂÈÏÄÉÍÏ ÓÄÅÌÁÔØ ÏÄÎÕ ÉÌÉ ÎÅÓËÏÌØËÏ ÚÁÐÌÁÔÏË, ÓÐÅÃÉÆÉÞÅÓËÉÈ ÔÏÌØËÏ ÄÌÑ ÏÄÎÏÊ ÁÒÈÉÔÅËÔÕÒÙ. ÷ ÜÔÏÍ ÓÌÕÞÁÅ RPM ÐÏÚ×ÏÌÉÔ ×ÁÍ ÐÒÉÌÏÖÉÔØ ÜÔÉ ÚÁÐÌÁÔËÉ ÔÏÌØËÏ ÎÁ ÜÔÏÊ ÁÒÈÉÔÅËÔÕÒÅ.

÷ ×ÙÛÅÐÒÉ×ÅÄÅÎÎÏÍ ÐÒÉÍÅÒÅ, fileutils ÉÍÅÀÔ ÚÁÐÌÁÔËÕ ÄÌÑ 64-ÂÉÔÏ×ÙÈ ÍÁÛÉÎ. ïÞÅ×ÉÄÎÏ, ÞÔÏ ÏÎÁ ÄÏÌÖÎÁ ÂÙÔØ ÐÒÉÌÏÖÅÎÁ ÔÏÌØËÏ ÎÁ Alpha. ôÁË ÞÔÏ ÍÁ ÄÏÂÁ×ÉÍ ÍÁËÒÏÓ %ifarch ×ÏËÒÕÇ ÐÒÉÍÅÎÅÎÉÑ 64-ÂÉÔÏ×ÏÊ ÚÁÐÌÁÔËÉ ËÁË ÐÒÉ×ÅÄÅÎÏ:

%ifarch axp
%patch1 -p1
%endif

üÔÏ ÂÕÄÅÔ ÏÂÅÓÐÅÞÉ×ÁÔØ, ÞÔÏ ÚÁÐÌÁÔËÁ ÎÅ ÂÕÄÅÔ ÐÒÉÌÏÖÅÎÁ ÎÁ ÌÀÂÏÊ ÁÒÈÉÔÅËÔÕÒÅ ÚÁ ÉÓËÌÀÞÅÎÉÅÍ alpha.

7.4 éÓËÌÀÞÅÎÉÅ ÁÒÈÉÔÅËÔÕÒ ÉÚ ÐÁËÅÔÏ×

äÌÑ ÔÏÇÏ ÞÔÏÂÙ ×Ù ÍÏÇÌÉ ÓÏÐÒÏ×ÏÖÄÁÔØ ÐÁËÅÔÙ Ó ÉÓÈÏÄÎÙÍ ÔÅËÓÔÏÍ × ÏÄÎÏÊ ÄÉÒÅËÔÏÒÉÉ ÄÌÑ ×ÓÅÈ ÐÌÁÔÆÏÒÍ ÍÙ ÒÅÁÌÉÚÏ×ÁÌÉ ×ÏÚÍÏÖÎÏÓÔØ ``ÉÓËÌÀÞÅÎÉÑ'' ÐÏÓÔÒÏÅÎÉÑ ÐÁËÅÔÏ× ÎÁ ÏÐÒÅÄÅÌÅÎÎÙÈ ÁÒÈÉÔÅËÔÕÒÁÈ. ôÁË ÞÔÏ ×Ù ×ÓÅ ÒÁ×ÎÏ ÍÏÖÅÔÅ ÄÅÌÁÔØ ÔÁËÉÅ ×ÅÝÉ ËÁË:

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

É ÉÍÅÔØ ÐÒÁ×ÉÌØÎÏ ÐÏÓÔÒÏÅÎÎÙÅ ÐÁËÅÔÙ. åÓÌÉ ×Ù ÅÝÅ ÎÅ ÐÅÒÅÎÅÓÌÉ ÐÒÉÌÏÖÅÎÉÅ ÎÁ ÏÐÒÅÄÅÌÅÎÎÕÀ ÐÌÁÔÆÏÒÍÕ, ×ÓÅ ÞÔÏ ×ÁÍ ÎÁÄÏ ÓÄÅÌÁÔØ ÜÔÏ ÄÏÂÁ×ÉÔØ ÐÒÉÍÅÒÎÏ ÓÌÅÄÕÀÝÕÀ ÓÔÒÏËÕ:

ExcludeArch: axp

Ë ÚÁÇÏÌÏ×ËÕ spec-ÆÁÊÌÁ ÐÁËÅÔÁ Ó ÉÓÈÏÄÎÙÍÉ ÔÅËÓÔÁÍÉ. úÁÔÅÍ ÚÁÎÏ×Ï ÐÏÓÔÒÏÊÔÅ ÐÁËÅÔ ÎÁ ÐÌÁÔÆÏÒÍÅ ÎÁ ËÏÔÏÒÏÊ ÏÎ ÍÏÖÅÔ ÓÔÒÏÉÔÓÑ. ÷Ù ÂÕÄÅÔÅ ÉÍÅÔØ ÐÁËÅÔ Ó ÉÓÈÏÄÎÙÍÉ ÔÅËÓÔÁÍÉ, ËÏÔÏÒÙÊ ÍÏÖÅÔ ÓÔÒÏÉÔØÓÑ ÎÁ ÐÌÁÔÆÏÒÍÅ Intel É ÍÏÖÅÔ ÂÙÔØ ÌÅÇËÏ ÐÒÏÐÕÝÅÎ ÎÁ ÐÌÁÔÆÏÒÍÅ Alpha.

7.5 ïËÏÎÞÁÎÉÅ

éÓÐÏÌØÚÏ×ÁÎÉÅ RPM ÄÌÑ ÓÏÚÄÁÎÉÑ ÍÎÏÇÏÐÌÁÔÆÏÒÍÅÎÎÙÈ ÐÁËÅÔÏ× ÏÂÙÞÎÏ ÂÏÌÅÅ ÌÅÇËÏ ÓÄÅÌÁÔØ, ÞÅÍ ÚÁÓÔÁ×ÉÔØ ÓÁÍ ÐÁËÅÔ ÂÙÔØ ÐÏÓÔÒÏÅÎÎÙÍ × ÏÂÏÉÈ ÍÅÓÔÁÈ. ëÁË ×ÓÅÇÄÁ ÎÁÉÌÕÞÛÁÑ ÐÏÍÏÝØ ËÏÇÄÁ ×Ù ÚÁÓÔÒÑÌÉ ÜÔÏ ÐÏÓÍÏÔÒÅÔØ ËÁË ÓÄÅÌÁÎ ÐÏÈÏÖÉÊ ÐÁËÅÔ.

8. úÁÍÅÞÁÎÉÅ Ï Á×ÔÏÒÓËÉÈ ÐÒÁ×ÁÈ

üÔÏÔ ÄÏËÕÍÅÎÔ É ÅÇÏ ÓÏÄÅÒÖÁÎÉÅ ÚÁÝÉÝÅÎÙ Á×ÔÏÒÓËÉÍ ÐÒÁ×ÏÍ. òÁÓÐÒÏÓÔÒÁÎÅÎÉÅ ÜÔÏÇÏ ÄÏËÕÍÅÎÔÁ ÒÁÚÒÅÛÅÎÏ ÐÒÉ ÓÏÈÒÁÎÅÎÉÉ ÅÇÏ ÓÏÄÅÒÖÉÍÏÇÏ ÎÅÉÚÍÅÎÎÙÍ. äÒÕÇÉÍÉ ÓÌÏ×ÁÍÉ × ÍÏÖÅÔÅ ÐÅÒÅÆÏÒÍÁÔÉÒÏ×ÁÔØ É ÐÅÒÅÐÅÞÁÔÙ×ÁÔØ ÄÏËÕÍÅÎÔ ÉÌÉ ÐÒÏÓÔÏ ÒÁÓÐÒÏÓÔÒÁÎÑÔØ ÅÇÏ.