View Full Version : help required re: rpmbuild error on f-spot

20th May 2006, 06:18 AM
Hi All,

I'm trying to build the latest version of f-spot (http://f-spot.org/Download). The current one in the existing Feodra repositories crashes on my system. The standard ./compile, make and make install runs and works fine (and is I'm now crash-free :) ) so I thought I'd go ahead and create an rpm file. I did the following:

1. Created the rpmbuild directories as indicated in Thomas Chungs guide (http://fedoranews.org/tchung/rpmbuild/)
2. Copied the spec file from the directory I compiled the source from to the ~/rpmbuild/SPECS directory.
3. Copied the source tarballs to the ~/rpmbuild/SOURCES

However, I'm getting the following error:

error: File must begin with "/": lib64/f-spot/*
Executing(%doc): /bin/sh -e /var/tmp/rpm-tmp.63220
+ umask 022
+ cd /home/larry/rpmbuild/BUILD
+ cd f-spot-0.1.11
+ DOCDIR=/var/tmp/f-spot-root/usr/share/doc/f-spot-0.1.11
+ export DOCDIR
+ rm -rf /var/tmp/f-spot-root/usr/share/doc/f-spot-0.1.11
+ /bin/mkdir -p /var/tmp/f-spot-root/usr/share/doc/f-spot-0.1.11
+ cp -pr COPYING README /var/tmp/f-spot-root/usr/share/doc/f-spot-0.1.11
+ exit 0
Processing files: f-spot-debuginfo-0.1.11-1
Provides: libfspot.so.0.0.0.debug()(64bit) libfspoteog.so.0.0.0.debug()(64bit) libfspotjpegtran.so.0.0.0.debug()(64bit)
Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1

RPM build errors:
File must begin with "/": lib64/f-spot/*

It's interesting that I can easily compile, build and install the package but the rpm build fails?

Any ideas, help will be greatly appreciated!

Thanks in advance! :)

20th May 2006, 10:24 AM
The actual error is before the first line you quoted in your output. The fact that the program compiles OK manually but RPM building breaks indicates an error in the spec file.

20th May 2006, 10:49 AM
Thanks Markkuk. I figured as such. I just copied the spec file created originally by ./configure

I am thinking that it has something to do with trying to find the libraries it needs and not defined in variables for rpmbuild??

Also, when I run the ./configure it finds the dependencies, however when I run 'rpmbuild -ba ~/rpmbuild/SPECS/f-spot.spec' it comes up with a 'mono' dependency error, which I know are installed. So i actually got this far by adding the --nodeps parameter ?? :confused:

Summary: F-Spot
Name: f-spot
Version: 0.1.11
Release: 1
License: GPL
Group: Applications/Imaging
Source: f-spot-%{version}.tar.gz
BuildRoot: /var/tmp/%{name}-root
BuildPrereq: mono
Prefix: /opt/gnome

An application to organize your photographs.

%setup -q

./configure --prefix=%{_prefix} \
--localstatedir=/var/lib \

case "${RPM_COMMAND:-all}" in
make install DESTDIR=${DESTDIR}




* Thu Aug 27 2004 Nat Friedman <nat@novell.com>
- initial packaging of 0.0.2

20th May 2006, 05:29 PM

I believe the files section should use %{_libdir} and %{_bindir} instead of %{_lib} and %{_prefix}/bin. See the Fedora f-spot.spec (http://cvs.fedora.redhat.com/viewcvs/rpms/f-spot/FC-5/f-spot.spec?rev=1.18&view=auto) file for comparision.

21st May 2006, 01:28 AM
That did it! :D

I compiled the latest (http://ftp.gnome.org/pub/gnome/sources/f-spot/0.1/f-spot-0.1.11.tar.bz2) version 0.1.11 tarballs into an rpm.

There was patches indicated which I just commented out as the initial build mentioned they had been 'applied'.

Thanks again.