ʤs@ SRPM
̪sG2003/02/11
wggLsA̷sTmb RPM P SRPM M޲z C
ewA~@sI

SRPM ݭnMG
SRPM ϥΨ쪺ؿG
]wɪDneG
SRPM sĶOG
]ۤvMG
Dm

SRPM ݭnMG
bW@`Aڭ̤ФF RPM oӬJiRSi몺åARPM iRbLƮw޲z觋Aܮehd߻PɯšAӥLiOHINObL binary ɮפAܥLl]we ( NO *.rpm ɮפAssĶN )APMήM󤧶ݩʬ̪ۨDٯuO˸oI
SYA{bѨMkFIڭ̥iHQΡyt source code SRPM zӭssĶ *.rpm ɮצڭ̩ҧƱ檺˦FIN]b SRPM ̭tO binary ɮסAӬOt source code A] SRPM OઽӦw˦i檺ɮתCݭnNLssĶAåB] i386, i586, i686 RPM ɮפA~w˦bڭ̪tηIoӮɭԧANӷ|QաAxIJMpܡAbsĶL{Aڭ̬O_iH[JL]wѼơAڭ̪ SRPM iH̷ӧڪQkӽsĶOIHIFIҥHOAoӮɭԧڭ̴NnӭקOH SRPM HνsĶۤvMաI
Lo̻ݭnSOdNNOA] SRPM ݭnssĶAӽsĶL{Aڭ̦ܤֻݭn make P{A gcc, c, c++ LsĶΪ{yӶisĶAҥHApGzbw˪L{Sn}ou㤧MAIosXAСAMAw˳IIuOonJA@j諸ݩʬ̪ۨDNOFI٬OijzAݤ@UpwaI

SRPM ϥΨ쪺ؿG
SRPM JMt source code A𫟺w]woAҥHڭ̥ݭnDAo SRPM bisĶɭԡA|ϥΨǥؿOHoˤ@Ӥ~ӭקIAiHA /usr/src oӥؿ̭hdݤ@UAq`C distribution ѪؿӬۦPAH Mandrake 9.0 ҡALOH /usr/src/RPM u@ؿA Red Hat OH /usr/src/redhat u@ؿA Openlinux hOH /usr/src/openlinux u@ؿILצpAϥNOb /usr/src oӥؿUNFInF /usr/src/redhat Yhݤ@G ~AbsĶL{Ai|oͤ~AΪ̬O]w~AoӮɭԴN|b /tmp Uͤ@Ӭ۹~ɡAziHھڸӿ~ɶi气u@OIҦDѨMA]sĶ\FAY᪺ɮסANOb /usr/src/redhat/SPEC, SOURCE, BUILD ɮ׳|QAӥuѤUmb /usr/src/redhat/RPMS UɮפFI

]wɪDneG
ڭ̦bWLFASRPM٥iH@dz]weAnpקodz]weOHڭ̥H²檺 rp-pppoe oӮMӻnFAAiHsW Internet W rp-pppoe xU SRPM AΪ̥ѥHU觋ӤUoӮM(Ъ`NUɮ׬O 2002/11 ̷sɮ׸ơAibzݨ쥻ɡAoӮMwgsFAҥHЪWU}ӤUaIhttp://www.roaringpenguin.com/pppoe/)Cܩ򥻪L{pUG
@
1. U SRPM nG
[root @test root]# wget http://www.roaringpenguin.com/pppoe/rp-pppoe-3.5-1.src.rpm

2. N SRPM Ѷ}b/usr/src/redhat Uؿ
[root @test root]# rpm Vi rp-pppoe-3.5-1.src.rpm

3. [@UǭlXOH
[root @test root]# cd /usr/src/redhat/SOURCES
[root @test SOURCE]# ls Vl
-rw-rw-r--    1 root     root       189321 Jul  8 22:38 rp-pppoe-3.5.tar.gz
IWܧڭ̪lXNOoɮװաI

@
nFAӬݬݧڭ̪]wѼɡAYOb /usr/src/redhat/SPECS *.spec ɮoI
@
[@Uw]]wɮפeG
[root @test root]# cd /usr/src/redhat/SPECS
[root @test SPECS]# vi rp-pppoe.spec

SIoӴNOSRPMw]]weɮoAihק@UA̭ƦIoˡG
Summary: PPP Over Ethernet (xDSL support)
Name: rp-pppoe
Version: 3.5
%if %(%{expand:test %{_vendor} != mandrake ; echo $?})
Release: 1mdk
%else
Release: 1
%endif
Copyright: GPL
Group: System Environment/Daemons
Source: http://www.roaringpenguin.com/pppoe/rp-pppoe-3.5.tar.gz
Url: http://www.roaringpenguin.com/pppoe/
Packager: David F. Skoll <dfs@roaringpenguin.com>
BuildRoot: /tmp/pppoe-build
Vendor: Roaring Penguin Software Inc.
Requires: ppp >= 2.3.7

# LIC: GPL
%description
PPPoE (Point-to-Point Protocol over Ethernet) is a protocol used by
many ADSL Internet Service Providers. Roaring Penguin has a free
client for Linux systems to connect to PPPoE service providers.

The client is a user-mode program and does not require any kernel
modifications. It is fully compliant with RFC 2516, the official PPPoE
specification.

%prep
%setup
cd src
./configure --mandir=%{_mandir}

%build
cd src
make
cd ../gui
make

%install
cd src
make install RPM_INSTALL_ROOT=$RPM_BUILD_ROOT
cd ../gui
make install RPM_INSTALL_ROOT=$RPM_BUILD_ROOT

%clean
rm -rf $RPM_BUILD_ROOT

%files
%defattr(-,root,root)
%doc doc/CHANGES doc/HOW-TO-CONNECT doc/LICENSE doc/KERNEL-MODE-PPPOE README SERVPOET
%config(noreplace) /etc/ppp/pppoe.conf

G٦ܦhTAQڬٲFIDFNnI

%changelog
* Thu Jul 21 2001 Shigechika AIKAWA <shige@cin.nihon-u.ac.jp>
- merged rp-pppeo.spec and rp-pppoe-gui.spec

@
`N쪺Orp-pppoe.sepcoɮסAoODnNSRPMsĶRPM]wɡAL򥻳WhiHoˬݡG
  1. ɮת}YHSummary}lAo]wO̰¦eF
  2. MCӤPqAH%Ӱ}YAҦp%prepP%installF
ڭ̨ӽͤ@ʹXӱ`SRPM]wqG WXӸƳq`ݭngաIOpGAnSۨݩʪYɡANiHݭnRequiresoI
  nFApGzۭqTQn[JܡANܧAn[JӬqANLק@UaIҦpApGAb]wMakefileɭԡAƱh@B~ѼƳ]wAN %setup ӬqANLק令zһݭnˤlANiHoI

SRPM sĶOG
AөOHISAק粒FA۵MNOnNLsĶiHw˪RPMɮװաIoӮɭԧڭ̴NiHb/usr/src/redhat/SPECSUUFG
@
[root @test SPECS]# rpm -bb rp-pppoe.spec  <==sĶRPMɮ
[root @test SPECS]# rpm -ba rp-pppoe.spec  <==]SRPMɮ
@
oӮɭԨtδN|o˰G
  1. iJBUILDoӥؿAbMandrake 9.0NO/usr/src/RPM/BUILDAbRed HatUNO/usr/src/redhat/BUILDoӥؿF
  2. ̷*.specɮפNamePVersion]wwqXu@ؿW١AHڭ̤WҤlҡAtδN|bBUILDؿRrp-pppoe-3.5ؿAAsإߤ@rp-pppoe-3.5ؿAöiJӥؿF
  3. bsتؿ̭AwSOURCESؿUӷɮסA]NO*.spec̭Source]wɮסAHtariYAHڭ̳oӨҤlӻAh|b/usr/src/redhat/BUILD/rp-pppoe-3.5AN/usr/src/redhat/SOURCES/rp-pppoe-3.5.tar.gziYաI
  4. MN}l%setupu@F
  5. AӶ}l%build%install]wPsĶI
  6. ̫N]ɮ׵LmөmahApGAWwwObi386tΡA̫sĶ\*.i386.rpmɮ״N|Qmb/usr/src/RPM/RPMS/i386̭oIpGOi586۵MNO/usr/src/redhat/RPMS/i586ؿUoI
ӨBJjNOoˤlI̫᪺GƷ|mbRPMSӥؿUNաI

]ۤvMG
oӴNFIڭ̦ۤvӽs@Uۤvs@RPMˡH|ܡH|Io²檺H@ӤpҤlӻIЪ`NAoӯuuO@ӤpҤlAҥHnıo_dzI𫟺Aݭn`NAѩbWBJAڭ̪DbNSRPMsĶRPMɭԡA|Htaro{ӱNɮ׸Ѷ}A]Aڭ̦biӷɮתإ߮ɡANݭnNL]@tar.gztarballɮפ~I
]ڭ̽sF@scriptAeOoˡG
@
[root @test root]# cd /usr/src/redhat/SOURCES
[root @test SOURCES]# vi showvbird.sh
#!/bin/bash
# This file is just used to demo the RPM packaging.
# the only thing is showing the hostname.
HOST=`/bin/hostname`
/bin/echo $HOST

[root @test SOURCES]# chmod 755 showvbird.sh
[root @test SOURCES]# tar Vzcvf showvbird.tar.gz showvbird.sh
`NFAڭ̥ݭnNL]~I

@
Wʧ@Aڭ̽sF@shell scriptɮסAɦWshowvbird.shAåBNL]㦳gzipYtarballɮסA]NOshowvbird.tar.gzo˪ɮפ~IЪ`NAoshowvbird.tar.gzɮסyݡzmbSOURCESؿUI
AӫhOns诊ӫܭn*.specɮoIAiHo²檺sg@UG
@
[root @test root]# cd /usr/src/redhat/SPECS
[root @test SPECS]# vi showvbird.spec
Summary:   This is a demo RPM package.
Name:      showvbird
Version:   1.0
Release:   1
Copyright: GPL
Group:     VBird's Home
Source:    showvbird.tar.gz   <==oӴNOإ߰_Ӫ arballɮסI
Url:       http://vbird.org.cn
Packager:  VBird

%description
This package is just a demo RPM.

%prep
%setup Vc
%install
install -m 755 showvbird.sh /usr/local/bin/showvbird.sh

%files
/usr/local/bin/showvbird.sh

@
nFI}lLsĶå]RPMɮװաI
@
[root @test SPECS]# rpm -bb showvbird.spec
K.()
Wrote: /usr/src/redhat/RPMS/i586/showvbird-1.0-1.i586.rpm
@
̫oӳQ]\ɮ״NQmb/usr/src/redhat/RPMS/i586/showvbird-1.0-1.i586.rpmoIMᵹLwˤ@UG
@
[root @test SPECS]# rpm Vivh /usr/src/RPM/RPMS/i586/showvbird-1.0-1.i586.rpm
Preparing...                ########################################### [100%]
   1:showvbird              ########################################### [100%]

[root @test SPECS]# rpm Vqi showvbird
Name        : showvbird                    Relocations: (not relocateable)
Version     : 1.0                          Vendor: (none)
Release     : 1                            Build Date: Wed 06 Nov 2002 11:27:17 PM CST
Install date: Wed 06 Nov 2002 11:27:42 PM CST      Build Host: test.linux.org
Group       : VBird's Home                 Source RPM: showvbird-1.0-1.src.rpm
Size        : 143                          License: GPL
Packager    : VBird
URL         : http://vbird.org.cn
Summary     : This is a demo RPM package.
Description :
This package is just a demo RPM.

[root @test SPECS]# showvbird.sh
test.linux.org
[root @test SPECS]# rpm Vql showvbird
/usr/local/bin/showvbird.sh       <==KKIwgO_ӤFIۤvnCI

@
Ϋ²檺觋ANiHNۤvnΪ̵{LקP]wIܤaIHzNiHۦ]wARPMoIMA]iHʭקzSRPMӷɤeoI

Dm ( nݵ׽бNƹʨyGzUťճBAUťճBYi )

2002/12/04GĤ@
2003/02/11GssƻP[J FAQ
2004/04/19GwA~@sAаѦҡGRPM P SRPM M޲z