Red Hat Bugzilla – Bug 189720
Packaging seems broken
Last modified: 2007-11-30 17:11:31 EST
Description of problem:
This problem is really a non 32 bit problem. As you know, when you build mono,
the main packages are all installed in /usr/lib. The problem comes when packages
are built for FE whereby even if one specifies %define _libdir /usr/lib, spec
files end up in /usr/lib64/pkgconfig with binaries built also ending up in
Upshot - packages on non 32 bit platforms fail when you try to use them.
When I build from source and pass in --libdir=/usr/lib64, mono is correctly
installed into /usr/lib64. If I do the same for other packages (such as ikvm),
everything works happily. If I don't pass in the --libdir argument to the
configure script, packages are installed in /usr/lib, but they still work -
nothing gets put into /usr/lib64.
There is either something wrong with how mono is being packaged or how package
makefiles are ignoring libs. Given that I have no problem with the source code
versions, it looks like a package problem.
Could you please have a look into this and offer some advice? It's holding up
something like 7 packages!
Version-Release number of selected component (if applicable):
Seems the problem is in that the makefile.am files have a problem. Some contain
a line like this
which obviously will put things in /usr/lib. However, on 64 bit systems, this
should really be /usr/lib64.
I've suggested a fix to the mono developers (it's simple enough to do)
1. Change the makefile.am bits to read
2. Alter the configure script so that it exports libdir to be lib or lib64
depending on what is passed in on the --libdir switch (default, lib)
I'll leave this bug open for now, though I suppose it's really an upstream
problem rather than an FC package problem