rpmbuild는 언제 i386 및 i686 패키지를 생성합니까(Centos 6)

rpmbuild는 언제 i386 및 i686 패키지를 생성합니까(Centos 6)

저는 상당히 크고 오래된 산업용 소프트웨어를 위한 빌드 시스템을 개발 중입니다. 빌드 결과 약 20rpm 더 빨라졌습니다(rpmbuild를 사용하여 처음부터 빌드, setup.py를 통해 처음부터 빌드, 패치 및 src.rpm 다시 빌드).

다른 시스템(모두 Centos 6.4 및 6.9)에서 빌드를 실행하면 패키지의 최종 아키텍처와 일치하지 않는 결과가 생성됩니다. 한 시스템은 모든 i386 패킷을 뱉어냅니다. 다른 컴퓨터에서는 일부 패키지는 i386에서, 일부는 i686에서 제공됩니다. 결과는 한 시스템에서는 일관되지만 시스템 전체에서는 일치하지 않습니다.

내 질문은 다음과 같습니다

rpmbuild가 i386 패키지와 i686 패키지를 생성하는지 여부를 결정하는 요소는 무엇입니까?

답변1

여러 요소가 결과 아키텍처를 제어합니다.

1) "spec" 파일에서 각 패키지는 BuildArch특정 스키마가 있는 필드를 포함할 수 있습니다.

2) "spec" 파일의 패키지에 BuildArch필드가 없으면 빌드 패키지는 대상 빌드 시스템 아키텍처를 갖습니다.

3) 이전 버전의 rpm명령 에는 --buildarch <arch>아치를 정의하는 옵션이 있습니다.

관련 정보