Resolved: How to Handle Stale Dependencies in pkgdb -F

Robert H. Perry rperry4 at
Mon Nov 17 12:33:59 PST 2003

Lee Harr wrote:

>>> Is docbook-3.0_2 still registered as installed on your system? I think
>>> that
>>> is the one it is looking for. It is possible that when upgrading one
>>> of the
>>> others, that one was removed inadvertently.
>> No, it is not registered as installed.  As a matter of fact, none of the
>> docbooks mentioned
>> are installed except dockbook-xsl-1.62.3.  In addition, the sgmlformat
>> port is not installed either.
>>  I always understood that stale dependencies indicated that a change was
>> necessary.   In this
>> situation, the 6 dependencies in question, including the port itself,
>> weren't even registered or installed
>> yet.  I just feel that something is missing here.  However, I think I'm
>> ready to move on to the next
>> step which is how to respond to the prompt:
>> New dependency? (? to help) :
>> If you hit "?", you'll see:
>> [Enter] to skip, [Ctrl] + [D] to delete, [.][Enter] to abort, [Tab] to
>> complete.
>> I looked at the R-deps listed with the port description and they also
>> correspond to the 6 shown above.
>> As a result, I feel confident that they should be registerd and
>> installed with the port and not the one
>> pkgdb suggests, dockbook-xsl-1.62.3.  I assume that I can delete
>> dockbook-xsl-1.62.3, but is that what
>> [Ctrl]+[D] will accomplish?  In other words, does "new dependency" refer
>> to the dependent that
>> it sees as the closest match, dockbook-xsl-1.62.3, or the one that is
>> recorded by the port, docbook-3.1_2?
>> Which would I be deleting?
> Not sure. Good question though  :o)
> I think there are 2 possibilities:
> - delete the dependency on docbook-3.1_2 (not the package itself)
> - delete the entire entry for sgmlformat
> I am pretty sure that nothing you do at that prompt will affect
> docbook-xsl in any way. (other than to create a dependency on it)
> My sense is that it would delete the dependency. In other words, you
> would be saying "sgmlformat no longer depends on docbook-3.1_2
> and there is no dependency to replace it"
> In your case, where none of these things are in your package database,
> I think you have to decide if these are packages you require, and if so,
> start rebuilding and reinstalling them to recreate their entries.
> Otherwise, you could pkg_deinstall the one that is giving you problems
> and move on.
> I just started using portupgrade myself (after a couple of years of doing
> these things by hand *erk*) so maybe someone else will chime in and
> let us know if we are on the right track.

I think you were on the right track from the beginning.  The program found
sgmlformat-1.7_2 but couldn't locate the dependents it was pointing to
so it suggested it's own, dockbook-xsl-1.62.3.  Should have focused on the
docbook ports at that point.  I simply couldn't deal with the idea that 
the docbook dependents would help when the main port, sgmlformat-1.7_2, 
hadn't been installed yet.  Furthermore, I was simply too focused on 
resolving the
issue by using the "New dependency" prompt.

I installed the docbook ports (ran docbook-1.2_1 and the rest followed 
as deps),
followed by pkgdb -F, and everything was OK.

Thanks again for your help.

More information about the freebsd-questions mailing list