On Thu, Jan 06, 2005 at 05:08:24PM -0800, David M. Fetter wrote:
> FATAL: errors occured while building:
> postgresql-7.4.3-2.1.0: postgresql has conflicting requirement
That is a message from the build tool.
> After tracing this error out, I found that it is because openpkg build
> seems to find that tcl is installed, however it doesn't seem to realize
> that the installed tcl isn't built with the with_x11 option
It does find out but doesn't know how to proceed. There should be
a line in the generated output like
# ... has conflicting requirement option = value != new-value
most likely pointing to the tcl package.
The logic in depend_option() checks a dependency against an already
installed package. If you want "tcl::with_x11=yes" and have installed
"tcl::with_x11=no" then it is seen as a conflict.
I don't know remember exactly why this is tested this way. The
test is performed only for dependent packages and not for anything
you ask to be built on the command line.
Changing line 1599ff from
$relmap = $env->{built}->{$pro->{prefix}} ||
$env->{installed}->{$pro->{prefix}};
to
$relmap = $env->{built}->{$pro->{prefix}};
in depend_option() restricts the test to packages in the build list
(which is definitely necessary). But I don't see yet the implications
of this change.
You should also be able to overcome the conflict by asking for an
upgrade of '-Dtcl::with_x11 -Dpostgresql::with_tcl tcl postgresql'.
This way the update to 'tcl' is performed first, therefore it
appears in the build list with the new option and the test against
the requirements of postgresql succeeds.
Greetings,
--
Michael van Elst
Internet: [EMAIL PROTECTED]
"A potential Snark may lurk in every tree."
______________________________________________________________________
The OpenPKG Project www.openpkg.org
User Communication List [email protected]