Fedora 15 패키지( )를 수정하고 싶습니다 gnome-shell-extensions-alternative-status-menu
. 이것은 약간의 수정입니다(복원이번에 제출하세요). ( )를 사용하여 yumdownloader
SRPM을 다운로드할 수 있습니다 gnome-shell-extensions-3.0.2-1.g63dd27cgit.fc15.src.rpm
.
그런 다음 압축을 풀고 다시 빌드하려면 어떻게 해야 합니까?
답변1
ROOT 사용자로서 무엇을 해야 합니까?
다른 패키지와 마찬가지로 SRPM 설치(
rpm --install [source-rpm-filename]
)디렉터리를 확인
/root/rpmbuild/SPECS
하고 패키지와 일치하는 사양 파일을 찾으세요.rpmbuild -bb /root/rpmbuild/SPECS/[found-filename]
결과 바이너리 패키지는 /root/rpmbuild/RPMS/
표준 명령을 통해 설치할 준비가 된 디렉터리에 위치합니다 rpm --install
.
노트:이것이 바로 표준 바이너리 패키지에 포함된 것입니다. 소스 코드를 변경하고 새 패키지를 생성하는 방법이 아니라 특정 질문에 답변하기 위해 이 글을 게시합니다.
수정하려면 패치를 입력으로 제공하고 SPECS 파일을 변경하거나... *.tar.bz2
찾은 표준을 자신의 변경 사항으로 교체 /root/rpmbuild/SOURCES
한 다음 위와 같이 빌드할 수 있습니다.
SPECS 패키지가 작동하도록 변경해야 할 수도 있습니다(일반적으로 패치를 제거하고 SPECS 파일에 프로그래밍된 일부 파일 이름을 변경함).
편집하다
rpm을 루트로 구축하는 것은 나쁜 습관인 것 같습니다(원천). 루트가 아닌 사용자로는 정상적으로 작동합니다.
패치 추가에 대한 단계별 지침(여기):
- 패치를 에 복사하세요
rpmbuild/SOURCES
. rpmbuild/SPECS/package.spec
라인 뒤에Patch0: mypatch.patch
오른쪽을 편집 하고 추가하십시오Source0: ...
.- 이
%setup ...
줄 뒤에%patch0 -p1
줄을 추가하세요.
이제 정상적으로 빌드됩니다. 그리고:rpmbuild -ba SPECS/package.spec
답변2
OpenSSL 패키지 재구축 CentOS 6.4SRPM 패키지 재구성의 자세한 예입니다.
위의 예에서는웃음- 패키지 빌더의 제다이 광선검.
모의는 chroot를 안정적으로 채운 다음 해당 chroot에서 패키지를 다시 빌드하기 위해 생성됩니다.
자세한 내용은 다음을 참조하세요.http://fedoraproject.org/wiki/Projects/Mock
예제에서 mock은 세 번 사용되었습니다. 한 번은 패키지를 "압축해제"한 다음 .src.rpm을 다시 빌드하고 마지막으로 .rpm을 생성하는 데 사용되었습니다.