저는 rpms 구축이 처음이고 OS 버전(예: rhel5 및 rhel6)에 따라 2개의 별도 파일 세트를 설치하는 rpm을 구축해야 합니다. 가능합니까? 그렇다면 어떻게? 그렇지 않다면 rpm-a-rhel5.rpm 및 rpm-a-rhel6.rpm과 같은 2개의 별도 rpm을 생성해야 한다고 가정합니다. 그러나 rpm-a-rhel6.rpm을 rhel5에 설치할 수 없으며 그 반대의 경우도 어떻게 보장할 수 있습니까? Case1/case2의 사양 파일에서 무엇을 확인해야 합니까? 아이디어가 있으시면 조언 부탁드립니다.
감사해요.
답변1
RPM 사양 파일에는 버전에 따라 완료되거나 설치되는 내용이 변경되는 RPM을 빌드할 수 있는 조건과 변수가 있습니다.
%if 0%{?rhel} = 6
Requires:
%endif
그러나 rpmbuild
달리기를 해도 효과가 줄어들지는 않습니다. 를 사용해야 합니다 mock
. fedora의 rpm 가이드를 읽어보는 것이 좋습니다.
https://fedoraproject.org/wiki/How_to_create_an_RPM_package
다른 질문에 관해서는 배포판 기반 RPM이 설치되는 것을 막을 수 없습니다. 종속성 차단을 유발하는 것은 일반적으로 패키지 요구 사항에 따라 다릅니다. 이를 수행하기 위한 종속성: Requires: redhat-release >= 6.3
.