I'm new to RPM packaging and I got stuck for quite a long time and cannot find root cause of the problem. I'm not quite sure I fully understand the concept of BuildRoot
in the spec file.
My RPM packaging happens in my home dir: /home/virtual/rpmbuild
.
I'm trying to package a java application located in /home/virtual/rpmbuild/tmp/BDHistProcessor
with the structure:
BDHistProcessor
lib
bin
conf
deploy
Here is my spec file I created:
%define _tmppath /home/virtual/rpmbuild/tmp
Name: BDHistProcessor
Version: 1.0.0
Release: 1%{?dist}
Summary: component which feed data into DB
Group: Applications/System
License: GPL
URL: https://www.tem.com/
BuildRoot: %{tmppath}/%{name}
%description
Component which feed data into DB
%prep
%build
%install
rm -rf $RPM_BUILD_ROOT
cp -r /home/virtual/rpmbuild/tmp/BDHistProcessor $RPM_BUILD_ROOT
%files
%defattr(-,root,root)
%{buildroot}/BDHistProcessor/lib
%{buildroot}/BDHistProcessor/bin
%{buildroot}/BDHistProcessor/conf
%{buildroot}/BDHistProcessor/deploy
%{buildroot}/BDHistProcessor/README.txt
%doc
%changelog
Running rpmbuild -v -bb -clean SPECS/myRPM.spec
returns output:
[virtual@virtual rpmbuild]$ rpmbuild -v -bb --clean SPECS/myRPM.spec
Executing(%prep): /bin/sh -e /home/virtual/rpmbuild/tmp/rpm-tmp.t2AMGe
+ umask 022
+ cd /home/virtual/rpmbuild/BUILD
+ exit 0
Executing(%build): /bin/sh -e /home/virtual/rpmbuild/tmp/rpm-tmp.1unXP8
+ umask 022
+ cd /home/virtual/rpmbuild/BUILD
+ exit 0
Executing(%install): /bin/sh -e /home/virtual/rpmbuild/tmp/rpm-tmp.SoaH02
+ umask 022
+ cd /home/virtual/rpmbuild/BUILD
+ rm -rf /home/virtual/rpmbuild/BUILDROOT/BDHistProcessor-1.0.0-1.el6.x86_64
+ cp -r /home/virtual/rpmbuild/tmp/BDHistProcessor /home/virtual/rpmbuild/BUILDROOT/BDHistProcessor-1.0.0-1.el6.x86_64
+ /usr/lib/rpm/check-rpaths /usr/lib/rpm/check-buildroot
+ /usr/lib/rpm/brp-compress
+ /usr/lib/rpm/brp-strip
+ /usr/lib/rpm/brp-strip-static-archive
+ /usr/lib/rpm/brp-strip-comment-note
Processing files: BDHistProcessor-1.0.0-1.el6.x86_64
error: File not found: /home/virtual/rpmbuild/BUILDROOT/BDHistProcessor-1.0.0-1.el6.x86_64/home/virtual/rpmbuild/BUILDROOT/BDHistProcessor-1.0.0-1.el6.x86_64/BDHistProcessor/lib
error: File not found: /home/virtual/rpmbuild/BUILDROOT/BDHistProcessor-1.0.0-1.el6.x86_64/home/virtual/rpmbuild/BUILDROOT/BDHistProcessor-1.0.0-1.el6.x86_64/BDHistProcessor/bin
error: File not found: /home/virtual/rpmbuild/BUILDROOT/BDHistProcessor-1.0.0-1.el6.x86_64/home/virtual/rpmbuild/BUILDROOT/BDHistProcessor-1.0.0-1.el6.x86_64/BDHistProcessor/conf
error: File not found: /home/virtual/rpmbuild/BUILDROOT/BDHistProcessor-1.0.0-1.el6.x86_64/home/virtual/rpmbuild/BUILDROOT/BDHistProcessor-1.0.0-1.el6.x86_64/BDHistProcessor/deploy
error: File not found: /home/virtual/rpmbuild/BUILDROOT/BDHistProcessor-1.0.0-1.el6.x86_64/home/virtual/rpmbuild/BUILDROOT/BDHistProcessor-1.0.0-1.el6.x86_64/BDHistProcessor/README.txt
RPM build errors:
File not found: /home/virtual/rpmbuild/BUILDROOT/BDHistProcessor-1.0.0-1.el6.x86_64/home/virtual/rpmbuild/BUILDROOT/BDHistProcessor-1.0.0-1.el6.x86_64/BDHistProcessor/lib
File not found: /home/virtual/rpmbuild/BUILDROOT/BDHistProcessor-1.0.0-1.el6.x86_64/home/virtual/rpmbuild/BUILDROOT/BDHistProcessor-1.0.0-1.el6.x86_64/BDHistProcessor/bin
File not found: /home/virtual/rpmbuild/BUILDROOT/BDHistProcessor-1.0.0-1.el6.x86_64/home/virtual/rpmbuild/BUILDROOT/BDHistProcessor-1.0.0-1.el6.x86_64/BDHistProcessor/conf
File not found: /home/virtual/rpmbuild/BUILDROOT/BDHistProcessor-1.0.0-1.el6.x86_64/home/virtual/rpmbuild/BUILDROOT/BDHistProcessor-1.0.0-1.el6.x86_64/BDHistProcessor/deploy
File not found: /home/virtual/rpmbuild/BUILDROOT/BDHistProcessor-1.0.0-1.el6.x86_64/home/virtual/rpmbuild/BUILDROOT/BDHistProcessor-1.0.0-1.el6.x86_64/BDHistProcessor/README.txt
I'm not quite sure how the paths get cycled in the error report. Can someone please clarify what I'm doing wrong here?