[packman] list of most frequent problems

Marcus Rueckert darix at web.de
Sun Apr 2 14:34:03 CEST 2006


On 2006-04-02 13:44:11 +0200, Pascal Bleser wrote:
> > Can I ask you guys a big favor? Could you please check your spec files
> > before 10.1 is released? Here is a collection of most frequent problems,
> > what makes compiling with y2pmbuild difficult:
> 
> A few comments/additions...

i would like to comment too.
(again all comments are in favor of the new y2pmbuild)

> > - missing gcc-c++ (unable to compile)
> 
> The portable requirement would be "c++_compiler" instead of "gcc-c++".
> I guess that doesn't matter much for us as we only do packages for
> Linux, but nevertheless ;)
> 
> In 99% of cases, you'll also need to specify
> libstdc++ libstdc++-devel

BuildRequires: gcc-c++

the 2 build scripts in factory scripts dont handle virtual provides yet.

> Note that the same is true for "c_compiler" instead of "gcc"
> 
> But that's not really critical, as most of the software we're packaging
> wouldn't compile with anything else than gcc/g++ anyway ;)
> 
> Also, don't forget to specify make and glibc-devel

why would we need to specify all the base system packages? how about
adding awk, sed, bash too? how about coreutils?

> > - missing pkgconfig (configure is not able to find requirements, this
> > solved the transcode problems)

i would not need this unconditionally.

> > - nasm is only i386, and probably Opteron. Please ifarch it out for PPC
[snip]
> %ifarch %ix86 amd64 x86_64
%ifarch %ix86 x86_64

should be really enough. :)

> 
> Here's what I do, maybe it helps:
> - - I always do a local build, not in the chroot, just to be able to fill
> the spec file

imho it is easier to see what is missing if you build in a chroot first.
the configure output/config.log is a good sign what is missing.

> - - I run a little script of mine on the resulting binaries (bin/* and
> lib*.so) to find out what packages are required at runtime
> - - from that list, I deduce the -devel packages and fill in the
> BuildRequires
> 
> That script is available from the packman SVN, in trunk/tools/ldd2rpm
> as well as here:
> http://linux01.gwdg.de/~pbleser/files/rpm/ldd2rpm

looks nice. but you dont have the guarantee that your normal system
wasnt missing anything either.

> > Most of these are much more easily fixed by the guy maintaining the
> > package, than the poor guy who tries to recompile it. So, it would be
> > fantastic, if you could go through this check list!
> 
> Absolutely. Thanks again for your hard work :)

just bring them up on the list. i will advocate using y2pmbuild a bit
more. that should ease your job. :)

> > Last time I hacked y2pmbuild configuration to include frequently missing
> > packages, but that is a very dirty hack taking away reproducibility,
> > which is the main advantage of y2pmbuild...

that screems "UGLY HACK"

darix

-- 
           openSUSE - SUSE Linux is my linux
               openSUSE is good for you
                   www.opensuse.org




More information about the Packman mailing list