위험
이 글은 원래 Rocky Linux의 부트스트랩(Early 2021) 중에 작성되었습니다. 이 페이지의 내용은 역사적인 이유로 유지되었지만 링크를 수정하고 문맥을 제공하거나 더 이상 관련이 없는 지침을 제거하여 혼란을 방지하기 위해 가볍게 수정되었습니다. 이 문서는 보관될 것입니다.
먼저 Mock 빌드 도구에 익숙해지십시오:¶
이를 통해 지나간 후, 패키지 디버깅 노력에 가장 크고 관련성 있는 기술/입문 페이지는 다음과 같습니다:
https://wiki.rockylinux.org/archive/legacy/mock_building_guide/
우리는 실제 Rocky 인프라와 마찬가지로 빌드를 수행하기 위해 "mock" 프로그램을 사용합니다. 이를 설치하고 아주 익숙해져야 합니다. 시작하는 데 이 가이드를 사용하고, 어떤 것을 달성하고 왜 특정한 순서로 모든 패키지를 빌드해야 하는지에 대해 설명합니다.
이를 주의 깊게 읽어보고, mock에 SRPM 몇 개를 넣어 컴파일해보는 등의 경험을 살짝 해보세요.
Mock은 정말로 멋지며, 간단하게 호출할 수 있는 프로그램으로 빌드를 수행하기 위해 chroot 내에 전체 시스템을 구성하고 그 후 정리해줍니다.
EPEL의 mock
패키지에서 제공하는 Rocky Linux용 모의 구성을 사용하십시오.
소개 - 수행해야 할 작업¶
지금 현재 우리가 가장 많은 도움이 필요한 영역은 실패한 패키지 빌드를 해결하는 데 도움을 주는 것입니다.
우리는 "연습"으로 CentOS 8.3을 다시 빌드하고 있으므로 공식 Rocky 빌드에 문제가 발생할 경우에 대비하여 이를 해결할 수 있습니다. 발견한 패키지의 모든 오류와 빌드를 위한 수정 방법을 문서화하고 있습니다. 이 문서는 공식 빌드 시간에 릴리스 엔지니어링 팀에 도움이 될 것입니다.
디버그 작업 지원:¶
Mock에 익숙해지고 특히 출력을 디버깅하는 데 익숙해진 후에 실패한 패키지를 살펴볼 수 있습니다. 이와 관련된 정보 중 일부는 위에 링크된 Mock HowTo 페이지에서 찾을 수 있습니다.
다른 디버거들에게 작업 중인 내용을 알려주세요! 중복된 노력을 피하려고 합니다. chat.rockylinux.org (#dev/packaging 채널)에 참여하고 알려주세요!
가장 최근의 설정을 사용하여 mock 프로그램을 설정하세요 (위에 링크가 제공됨). 이를 사용하여 외부 종속성, 추가 저장소 등과 함께 우리와 동일한 방식으로 빌드를 시도할 수 있습니다.
오류를 조사하십시오.
무엇이 문제인지, 어떻게 수정해야 하는지 파악합니다. 특수 모의 설정 또는 프로그램 + specfile에 추가된 패치의 형태를 취할 수 있습니다. 결과를 #Dev/Packaging 채널에 보고하고, 누군가가 위에 링크된 Wiki Package_Error_Tracking 페이지에 기록합니다.
목표는 빌드 실패를 줄이고 Package_Error_Tracking 페이지를 늘리는 것입니다. 필요한 경우 다양한 패키지에 대한 빌드 수정을 우리의 패치 저장소에 커밋합니다: https://git.rockylinux.org/staging/patch.