rpm 사양 파일에서 사양 파일 경로를 가져오는 방법

rpm 사양 파일에서 사양 파일 경로를 가져오는 방법

사양 파일은 소스 디렉터리에 있습니다. 사양 파일 빌드 섹션은 다음과 같습니다.

%build
cd ~/path/sources
make

표준 파일 경로가 감지되면 ~/path/sources의 하드코딩을 피할 수 있습니다. 표준 파일 경로를 얻는 방법.

답변1

%{_specdir} /${name}.spec 

일을 할 것입니다. 이것 좀 봐페도라 위키 페이지더 많은 정보를 알고 싶습니다.

답변2

경로는 프로세스 자체에서 시작되는 경우가 많습니다. 빌드 프로세스의 출력을 살펴보면 프로세스의 다른 단계를 준비하기 위해 다양한 디렉터리로 이동하는 것을 볼 수 있습니다.

간단히 말해서, 절대 경로를 상대 경로로 변경하면 대부분의 문제가 발생합니다(소스 파일은 모두 SRPM의 페이로드에 있거나 새 빌드인 경우 빌드 전에 소스 트리로 이동해야 함). 모두 사라집니다.

또한 %prep 부분에 echo를 사용하고 다음과 같은 어리석은 애완동물 트릭을 확인하세요.

%prep echo %(디렉터리 이름%{Source0}) echo %(기본 이름%{S:1})

이런 종류의 혼란은 실제로 이와 같은 끔찍한 일을 해야 한다고 확신할 때 유용합니다. 가능하다면 희귀품으로 보관하세요.

나보다 나은 사람: 이 게시물을 보면 필요할 때마다 %()를 구문 분석하는 대신 한 번만 구문 분석하도록 하는 방법을 알려주세요.

관련 정보