rpmbuild 로 rpm 패키지 만들기
개요
rpm 패키지 만들기
설정
일반 사용자로 rpmbuild 실행
사용자의 $HOME 디렉터리내 .rpmmacros 파일에 rpmbuild 설정 저장
vi ~/.rpmmacros
## $HOME는 문자열로 취급하므로 제대로 동작하지 않으며 환경변수를 가져오려면 %{getenv:ENNVNAME} 을 사용 %_topdir %{getenv:HOME}/rpmbuild %_tmppath %{_topdir}/rpmbuild/tmp
RPM 디렉터리 생성
mkdir -p ~/rpmbuild/{BUILD,RPMS,SOURCES,SPECS,SRPMS,tmp}
SPEC
어떻게 rpm 을 만들지 기술하는 파일.
주요 항목
- %files: The list of files that will be installed. See the %files section below for more.
- %changelog: Changes in the package. Use the format example above. Do NOT put software's changelog at here.This changelog is for RPM itself.
테스트 spec
program.spec
Summary: Key info on software Name: name-of-the-package Version: 1.2.3.4 Release: 1 License: Copyright info Group: Applications/System %description Brief description of software package. %prep %build %install %clean %files %defattr(-,root,root) %doc README TODO COPYING ChangeLog %{_bindir}/* %{_sbindir}/* %changelog * Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> * - 2.1.5-21 - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild * Fri Jul 02 2010 Kamil Dudka <kdudka@redhat.com> 2.1.5-20 - handle multi-partition devices with spaces in mount points properly (#608502)
바이너리 rpm 만들기
rpmbuild -ba program.spec
Ref
- 사용자 계정으로 rpm 패키지 설치
- How to create an RPM package - https://fedoraproject.org/wiki/How_to_create_an_RPM_package