가설
Source0: %{gnu_download_url}/coreutils/coreutils-%{version}.tar.gz
Source1: mk7distro.tar.bz2
Patch0: hostutils.patch.bz2
%prep
누군가 RPM 사양 파일 섹션에서 다음 명령의 기능을 말해 줄 수 있습니까?
%setup -q -n %{name} -c -a 1
답변1
그것은소스코드 압축해제 매크로:
the %setup macro is used to unpack the original sources, in preparation for the
build. In its simplest form, the macro is used with no options and gets the name
of the source archive from the source tag specified earlier in the spec file.
답변2
질문에 더 정확하게 답변하고 업데이트된 링크를 제공하려면 예,%세트 명령Source1 타르볼의 압축을 풀지만 지정된 옵션으로 인해 Source0 타르볼의 압축은 풀지 않습니다 -a 1
. 이 옵션을 사용하면 사양 파일의 "Name:" 섹션에서 -c
이름이 지정된 하위 디렉터리에 tarball이 추출됩니다 .-n %{name}
%setup -q 이 명령은 빌드 디렉터리(일반적으로 /usr/src/redhat/BUILD)로 변경하고 소스 파일을 추출합니다. 이 매크로에는 최소한 하나의 소스 파일이 필요하며 /usr/src/redhat/BUILD 아래에 필요한 하위 디렉터리를 생성합니다. 하위 디렉터리의 이름은 패키지 이름과 버전을 따라 지정해야 합니다(예: telnet-1.0.1). 올바른 하위 디렉토리를 자동으로 생성하는 압축된 tar 아카이브를 사용하지 않는 경우 %setup 매크로에 –c 옵션을 추가하십시오. –c 옵션은 소스 코드를 추출하기 위한 하위 디렉터리를 만듭니다.
%setup 명령은 tar, zip, gzip, bzip2, pack, 압축 및 lzh 압축 파일의 압축을 자동으로 풀 수 있습니다. 그러나 tar-gzip 형식이 가장 널리 사용됩니다.