rpmbuild 도구를 사용하여 rpm을 빌드하려고합니다. 약 30GB의 바이너리를 빌드하는 소스 코드가 있습니다. rpm을 만들고있는이 소프트웨어는 수십 개의 실행 파일을 가지고 있습니다. 단일 실행 파일 (예 : init)의 바이너리 만 복사하면 rpm이 성공적으로 빌드됩니다. 하지만 전체 빌드를 rpm으로 덤프하면 rpmbuild가 모든 작업을 수행하지만 결국에는 seg 오류가 발생합니다. 난 단지 바이너리의 일부를 복사하는 경우rpmbuild가 seg 오류를 발생합니다.
# This is a sample spec file for wget
%define _topdir /root/mywget
%define name source
%define release 1
%define version 1.12
%define _builddir /root/mywget/BUILD/glenlivet
%define _buildrootdir /root/mywget/BUILDROOT
%define _buildroot /root/mywget/BUILDROOT
%define _sourcedir /root/mywget/SOURCES
BuildRoot: %{_buildroot}
Summary: GNU source
License: GPL
Name: %{name}
Version: %{version}
Release: %{release}
Source: %{name}-%{version}.tar.gz
Prefix: /usr
Group: Development/Tools
%description
The GNU sample program downloads files from the Internet using the command-line.
%prep
%setup -q -n glenlivet
%build
cd %{_builddir}
make all
%install
rm -rf %{_buildrootdir}
mkdir -p %{_buildrootdir}/bin
cp -p -r %{_builddir}/build/obj-x64/* %{_buildrootdir}/bin/
%files
%defattr(-,root,root)
/bin/*
그것을 잘 작동합니다 (한 유틸리티와 종속 바이너리를 가정 해 봅시다) :
여기 내 사양 파일입니다. 그러나 빌드 전체를 복사하려고하면 seg 오류가 발생합니다. rpmbuild이 섹션을 실행 한 후 은 내가 독방 감금 오류를 얻을 : 또한 내 소스 파일을 처리 % 준비 % 빌드 %가
rpmbuild를 설치합니다.
처리 파일 : 소스 1.12-1
찾기가 제공 :
찾기가 필요합니다 :
찾기 보충 교재 :
이 제공 : ...
이 필요합니다 : ......
패키지되지 않은 f 검사/usr/lib/rpm/check-files/root/mywget/BUILDROOT
/usr/lib/rpm/check-files/루트/mywget/BUILDROOT패키지되지 않은 파일을 확인하십시오.
세그먼트 오류
어떤 잘못 되었습니까? 또는 어디에 rpmbuild가 실패합니까? 미리 감사드립니다.
당신은 아마 지금이 답변을 받아 들일 수 : 이 신청 버그가 있습니다. – hlovdal