bW@`Aڭ̤ФF RPM oӬJiRSi몺åARPM iRbLƮwz觋AܮehdPɯš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 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
- /usr/src/redhat/SPECGoӥؿmOӮM]wɡAҦpoӮMTѼơB]wصmbo̡F
- /usr/src/redhat/SOURCEGoӥؿmOӮMlɡ]*.tar.gzɮס^H config oӳ]wɡF
- /usr/src/redhat/BUILDGbsĶL{AǼȦsƳ|mboӥؿF
~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
- /usr/src/redhat/RPMSGgLsĶAåBQsĶ\AN]ɮשmboӥؿCY]tF i386, i586, i686, noarch.... ؿC
ڭ̦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.rpm2. N SRPM Ѷ}b/usr/src/redhat Uؿ
[root @test root]# rpm Vi rp-pppoe-3.5-1.src.rpm3. [@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.specSIoӴ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.confG٦ܦ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ɡALWhiHoˬݡGڭ̨ӽͤ@ʹXӱ`SRPM]wqG
- ɮת}YHSummary}lAo]wO̰¦eF
- MCӤPqAH%Ӱ}YAҦp%prepP%installF
WXӸƳq`ݭngաIOpGAnSۨݩʪYɡANiHݭnRequiresoI
- tξT譱G
@
- SummaryGDnMAҦpWAڭ̻FLOpppγ~աI
- NameGoӴNOMW١F
- VersionGoӬOMTF
- ReleaseGoӬOӪ]ƻAbMandrakḙA|۰ʪA]w]ƳINO1mdkөNNF
- CopyrightGoӮMvҦAڭ̬OϥGPLաI
- GroupGoӮMoiW١F
- SourceGoӮMӷApGOWUMAq`@w|oӸTӧiDjaoӭlɪӷI
- UrlGoӭlXDnxF PackagerGoӮMOgѽ֨ӥ]OH
- VenderGoitӭF
- ExclusiveArchGoӬOoӮMAXw˪wAq`w]i386AMAA]iHվ㬰i586յI
- RequiresGpGAoӮMٻݭnLM䴩Ao̴NݼgWӡAhAs@RPMAtδN|۰ʪhˬdաIoNOyۨݩʡzDnӷoI
- %description
NzM@²uIoӤ]OݭnC
- %prep
o]wby|i]wΦwˤeAAnsĶRPMAƥƱzANOprepare²goILu@ƶDnG
@@
- MMһݭnؿO_wgsbHT{ΪI
- ƥإ߱zMһݭnؿAΪ̨ƥݭni檺ȡF
- pGݦw˪LinuxtΤwgw˪ɭԥi|Qл\ɮɡANݭniƥ(backup)u@FI
jPu@NOoǰաI
- %setup
oӬqNObإߧڭ̦bTarballMakefileɮװաIҥHOAMNO./config]wɮoIpGAnۤvsWۤvѼơANiHboӦa[JA]wȡIpGAn饻So譱ݭnA̭NݭnsgeoI
- %build
buildNOإ߰ڡIҥHMoAoӬqNObͫmakesĶi檺{oI
- %install
sĶ(build)ANOnw˰աIw˴NOgbo̡A]NOTarbalḽmake installNoI
- %files
oӮMw˪ɮ׳ݭngǫӡAM]AFyؿzIҥHsPؿФ@_goӬqIHƬdOI^_^nFApGzۭqTQn[JܡANܧAn[JӬqANLק@UaIҦpApGAb]wMakefileɭԡAƱh@B~ѼƳ]wAN %setup ӬqANLק令zһݭnˤlANiHoI
- %changelog
oӥDnhObOoӮMgsoI
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ӨBJjNOoˤlI̫᪺GƷ|mbRPMSӥؿUNաI
- iJBUILDoӥؿAbMandrake 9.0NO/usr/src/RPM/BUILDAbRed HatUNO/usr/src/redhat/BUILDoӥؿF
- ̷*.specɮפNamePVersion]wwqXu@ؿW١AHڭ̤WҤlҡAtδN|bBUILDؿRrp-pppoe-3.5ؿAAsإߤ@rp-pppoe-3.5ؿAöiJӥؿF
- 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
- MN}l%setupu@F
- AӶ}l%build%install]wPsĶI
- ̫N]ɮLmөmahApGAWwwObi386tΡA̫sĶ\*.i386.rpmɮ״N|Qmb/usr/src/RPM/RPMS/i386̭oIpGOi586۵MNO/usr/src/redhat/RPMS/i586ؿUoI
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