Hi,
I'm encountering dependency problems while trying to install an rpm
package that I built. The program is rsnapshot, which is a perl program
similar to dirvish.
I've got it working under CentOS 6 and Ubuntu 16.04 (using alien), but
I'm having problems with CentOS 5 due to missing dependencies. The rpm
I built under CentOS 5 has the following problematic dependencies. As
far as I know, these dependencies are not readily available under CentOS
5. I could build them if that's really necessary, but I have my doubts
as to whether they are legit.
perl(DBI)
perl(Data::Dumper)
perl(XML::Simple)
perl(XML::Validator::Schema)
I've searched the rsnapshot code looking for something that mentions DBI
or XML, but they don't appear in the code. They do not appear in the
spec file either. Also, the rsnapshot README says "It is written
entirely in perl with no module dependencies". I'm not sure whether to
believe that or not.
Does anyone have an idea about what might be causing these dependencies
to be listed in the package?
Here's the spec file I'm using, sans the changelog stuff.
Name: rsnapshot
Version: 1.4.2
# tarball filename and resulting directory contains hyphen between the
# number representing the number of commits since the tag and the
# commit hash. rpm doesn't allow hyphens in the version or release.
# Deal with this by using just the 'commits since tag' for the release
# number.
%define commit_count 11
%define commit_hash g02a2845
Release: %{commit_count}.2
Summary: Backup program using hardlinks
License: GPL-2.0+
Group: Productivity/Archiving/Backup
Url: http://www.rsnapshot.org/
Source0: %{name}-%{version}-%{commit_count}-%{commit_hash}.tar.gz
Source1: rsnapshot.logrotate
Source2: rsnapshot.cron
#Patch1: rsnapshot-config.patch
BuildRequires: logrotate
BuildRequires: openssh
BuildRequires: perl
BuildRequires: rsync
Requires: logrotate
Requires: openssh
Requires: perl
Requires: perl-Lchown
Requires: rsync
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildArch: noarch
%if 0%{?suse_version} >= 1320
BuildRequires: util-linux-systemd
Requires: util-linux-systemd
%endif
%description
rsnapshot is a filesystem snapshot utility for making backups of local
and remote systems. Using rsync and hard links, it is possible to keep
multiple, full backups instantly available. The disk space required is
just a little more than the space of one full backup, plus
incrementals. Depending on your configuration, it is quite possible to
set up in just a few minutes. Files can be restored by the users who
own them, without the root user getting involved. There are no tapes to
change, so once it's set up, you may never need to think about it
again.
%prep
%setup -q -n %{name}-%{version}-%{commit_count}-%{commit_hash}
#%patch1
%build
# replace hardcoded /usr/local
#find . -type f -exec sed -i "s|usr/local|usr|g" {} +
%configure
make %{?_smp_mflags}
%check
make %{?_smp_mflags} test
%install
make DESTDIR=%{buildroot} install %{?_smp_mflags}
install -d "%{buildroot}/%{_sysconfdir}"
mv "utils/rsnapreport.pl" "%{buildroot}/%{_bindir}/rsnapreport"
chmod 755 "%{buildroot}/%{_bindir}/rsnapreport"
#install -m 644 rsnapshot.conf.default
"%{buildroot}/%{_sysconfdir}/rsnapshot.conf.default"
#install -m 600 rsnapshot.conf.default
"%{buildroot}/%{_sysconfdir}/rsnapshot.conf"
mv "%{buildroot}/%{_sysconfdir}/rsnapshot.conf.default"
"%{buildroot}/%{_sysconfdir}/rsnapshot.conf"
install -m 644 -D %{S:1} "%{buildroot}/%{_sysconfdir}/logrotate.d/rsnapshot"
install -m 644 -D %{S:2} "%{buildroot}/%{_sysconfdir}/cron.d/rsnapshot"
%files
%defattr(-,root,root)
%doc AUTHORS COPYING ChangeLog README.md
%doc rsnapshot.conf.default
%doc utils/
%{_bindir}/rsnapshot
%{_bindir}/rsnapshot-diff
%{_bindir}/rsnapreport
%config(noreplace) %{_sysconfdir}/rsnapshot.conf
%config(noreplace) %{_sysconfdir}/logrotate.d/rsnapshot
%config(noreplace) %{_sysconfdir}/cron.d/rsnapshot
%{_mandir}/man1/rsnapshot.1.gz
%{_mandir}/man1/rsnapshot-diff.1.gz
galen
--
Galen Seitz
[email protected]
_______________________________________________
PLUG mailing list
[email protected]
http://lists.pdxlinux.org/mailman/listinfo/plug