[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: Packages building across diferent RPM versions

On Fri, Apr 16, 2004 at 10:17:23AM -0400, Israel Fdez Cabrera wrote:
> Hi all...
> I've generated some packages using RPM ver 4.1.1 on my SuSE Linux 9.0,
> but SuSE 9.0 comes with libc6 and I need those packages fot both libc6
> and libc5 so I'm rebuilding the packages using a RedHat Linux 7.3 with
> RPM ver 4.0.4 but in this last system rpm showme some error messages
> when it is building the package, the errors are like this one, one for
> each file in the %file section:
> File not found: /var/tmp/SAV_Unix-root/opt/sav/.... 

Take a look at that build root: anything under it? Anything missing? 
Maybe there was an error in the build or in the install phase.

> I attach the spec file I guess it may help, this spec file was generate
> by KDevelop and was modified by my self...
> best reg@rds and thanks in advance for your time
> Israel

> #SPEC File para sav unix
> Name: SAV_Unix
> Version: 1.5
> Release: 0
> Vendor: Segurmatica
> Copyright: Copyright Segurmatica 2004

This really should be "License:" rather than "Copyright:" .

> Summary: Detector descontaminador de programas malignos

If your target audiance includes non-spanish(?) readers you can write
the main summary and description in English, and use a separate
per-language description .

> Group: Applications/System
> Packager: Segurmatica
> Requires: savlib >= 1.5
> BuildRoot: %{_tmppath}/%{name}-root
> Source: /usr/src/packages/SOURCES/SAV_Unix-1.5.tar.gz

Source: SAV_Unix-1.5.tar.gz

You should not assume that the rpm directory is '/usr/src/packages' .
Furthermore, it is advised that you do not build packages as root. This
can avoid nasty stuff like installing on your real system instead of to
the build root.

In fact, this is one possible exeplanation of your error message.

> %description
> Detector descontaminador de programas malignos.
> %package dev
> Summary: Paquete con librerias de desarrollo
> Group: Applications/Development
> %description dev
> Librerias de desarrollo para los virus macro y de windows. Generalmente no sera necesario instalar este paquete a menos que se quiera linkear estaticamnte con estas dos librerias.
> %prep
> %setup
> --target=i386

Why is that? Why do you run ./configure twice?

> %build
> %configure
> make
> %install
> rm -rf %{buildroot}
> %makeinstall
> %clean
> rm -rf %{buildroot}
> %post -p /sbin/ldconfig
> %postun
> /etc/init.d/savd stop
> rm -f /etc/init.d/savd
> rm -fr /opt/sav/
> rm -f /usr/bin/sscan
> rm -f /lib/libsav_win32.so

Why do you delete those files? Are those files part of the package or
are they created

> %files
> %defattr(-, root, root)
> /opt/sav/bin/sscan
> /opt/sav/bin/savdaemon
> %attr(711, root, root)/opt/sav/bin/update.sh
> %attr(711, root, root)/opt/sav/bin/config.sh
> %attr(711, root, root)/opt/sav/bin/config.suse.sh
> %attr(711, root, root)/opt/sav/bin/config.mandrake.sh
> %attr(711, root, root)/opt/sav/bin/config.redhat.sh

Are those shell scripts? If so: they will probably not be executable by
non-root users. Executing a script requires reading it.

> /opt/sav/lib/libmac.so
> /opt/sav/lib/libsav_win32.so
> /opt/sav/etc/savdaemon.ini
> /opt/sav/etc/sav.set
> /opt/sav/etc/scripts.cad
> /opt/sav/etc/codes.cad
> /opt/sav/etc/signs.cad
> /opt/sav/etc/rcsavd.suse
> /opt/sav/etc/rcsavd.redhat
> /opt/sav/log/savdaemon.log
> %files dev
> /opt/sav/lib/*.a
> /opt/sav/lib/*.la
> %changelog

> _______________________________________________
> Rpm-list mailing list
> Rpm-list@redhat.com
> https://www.redhat.com/mailman/listinfo/rpm-list

Tzafrir Cohen                       +---------------------------+
http://www.technion.ac.il/~tzafrir/ |vim is a mutt's best friend|
mailto:tzafrir@technion.ac.il       +---------------------------+

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]