운영 체제 레드햇 8.4
%debug_package
파일에 매크로를 포함하면 spec
패키지에 대한 디버깅 정보가 생성되고 mypackage-debuginfo-<VERSION>.<ARCH>
rpm이 생성된다는 것을 알고 있습니다 . 그러나 흥미롭게도 spec
내 파일에는 이 매크로가 없지만 디버그 정보가 빌드됩니다.
그러나 파일 상단에는 spec
다음과 같은 전역 변수가 있습니다.
%global _hardened_build 1
%global sysrepo 0
%undefine _missing_build_ids_terminate_build
%define _unpackaged_files_terminate_build 0
%debug_package
그 중 하나에 매크로가 활성화 되어 있는지 궁금합니다 .
답변1
rpm 매크로 정의는 순차적으로 로드되므로 가장 좋은 옵션은 다음과 같습니다.
- RPM에서 재정의 - 해당 RPM에 대한 debuginfo RPM 생성을 비활성화하는 데 사용됩니다.
~/.rpmrc
귀하의 계정에 구축된 RPM에 대한 debuginfo 생성을 비활성화하려면 --에서 이것을 재정의하십시오./etc/rpm/macros
/etc/rpmrc
해당 시스템에 구축된 RPM에 대한 디버그 정보 생성을 비활성화하려면 또는 --에서 이를 재정의합니다 .
내 시스템의 정의는 __debug_package 1
/usr/lib/rpm/macros에 설정되어 있으므로 그 이후에 읽은 RC 파일은 모두 작동합니다(RPM 파일 자체 포함).