On Thu, 12 Dec 2002, Praedor Atrebates wrote:

> Anything that is required for a package to build is a dependency, or
> should be considered such.  As a dependency, the build process should
> complain about not finding its needed components BEFORE the build begins
> rather than at the very end.  It is not that a Redhat src rpm should
> build on Mandrake, it should simply check that the system it is going to
> build on meets its requirements for success and complain if it doesn't
> (like it doesn't find /doc/html which is apparently required for a
> successful rpm build of kdelibs for some reason).  With such a warning
> at the beginning, correction steps can be taken.  In my case, in lieu of
> finding the particular file that is pointing at /doc, I created a
> symlink from the proper location, /usr/lib/doc to /doc and it worked.
> 

In the case of kdelibs, RedHat exports a variable called QTDIR that's
used as a predicate for /doc/html. When expanded it will point to
/usr/lib/qt3-gcc3.2/doc/html. Because Mandrake doesn't export this
variable it expands to /doc/html, which doesn't exist. To build kdelibs
it does require qt-devel (which owns ${QTDIR}/doc/html) so on a RedHat
system the spec can rightly assume that the directory exists. One major
benefit of RPM is that each package doesn't have to do all the
dependency checking itself. To require the spec file to check that each
dependent package is correctly installed would defeat the main benefit
of RPM.

> It would be nice to know about "fatal" nitnoids like this before the
> process begins rather than after it's done: OK, everything built just
> fine, so let's make the actual rpms...hmmm, I can't find a minor thing
> like a textfile or html file where I want it to be so...no rpm for you
> even though it doesn't have any affect on the usefulness or function of
> what was built in the first place.
> 
> praedor
> 
> 
> 
> 

Want to buy your Pack or Services from MandrakeSoft? 
Go to http://www.mandrakestore.com

Reply via email to