From owner-freebsd-questions@FreeBSD.ORG Mon Nov 13 20:06:39 2006 Return-Path: X-Original-To: freebsd-questions@freebsd.org Delivered-To: freebsd-questions@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 367E816A4A0 for ; Mon, 13 Nov 2006 20:06:39 +0000 (UTC) (envelope-from e.schuele@computer.org) Received: from rwcrmhc13.comcast.net (rwcrmhc13.comcast.net [216.148.227.153]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7F99A43E44 for ; Mon, 13 Nov 2006 20:01:01 +0000 (GMT) (envelope-from e.schuele@computer.org) Received: from [208.206.151.59] (host59.gtisd.com?[208.206.151.59]) by comcast.net (rwcrmhc13) with ESMTP id <20061113200100m130042q4de>; Mon, 13 Nov 2006 20:01:00 +0000 Message-ID: <4558CEFA.9000402@computer.org> Date: Mon, 13 Nov 2006 14:00:58 -0600 From: Eric Schuele User-Agent: Thunderbird 1.5.0.8 (X11/20061111) MIME-Version: 1.0 To: Lowell Gilbert References: <45549755.3090205@computer.org> <44hcx35ph8.fsf@be-well.ilk.org> In-Reply-To: <44hcx35ph8.fsf@be-well.ilk.org> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: FreeBSD Questions Subject: Re: pkg_cutleaves listing needed ports as leaf nodes..... X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 13 Nov 2006 20:06:39 -0000 On 11/13/06 09:35, Lowell Gilbert wrote: > Eric Schuele writes: > >> When I use `pkg_cutleaves -l` to list leaf nodes. It is listing >> things I know are required by other apps. These aren't build >> dependencies. >> >> For example, it lists g-wrap, and libpcap. If I remove g-wrap, my >> gnucash2 immediately refuses to run. And I know libpcap was an >> "option" I selected for NTop. There are others as well. I have >> noticed that a `make pretty-print-run-depends-list` is empty for >> gnucash2. Is that significant? >> >> Why would these not be +REQUIRED_BY something? `pkgdb -F` doesn't >> mention anything at all. >> >> If something has no +REQUIRED_BY file... how can I go about >> determining why its on my machine or which port installed it? >> Obviously top level items I installed aside. >> >> Thanks. >> >> [Running 6.2-PRERELEASE] > > > The requirements files are definitely supposed to be there, and their > non-presence constitutes corruption in your package database. > pkg_cutleaves can't figure out requirements that aren't recorded, so > getting the package database restored has to be your first step. > > The obvious way of fixing the package database is to reinstall all of > your ports before removing the leaves. You may not need to use such a > brute-force solution, though... If you have backups of /var/db/pkg, > you could go through and try to find the dependencies as they existed > when the backup was made. Obviously, this might not be fully > up-to-date; however, it's likely to be better than what you have now. > > Good luck. > Thanks for the response. Well, I would accept this without any question... especially given the full story of my machine (I did loose /var... I did reinstall everything... but after reinstalling everything, there was a different number of ports installed??? I then pulled out a backup and grabbed some straglers and got closer.). However, sticking with my gnucash2 example. You would think if I were to uninstall gnucash2, uninstall g-wrap, and reinstall gnucash2, it would correct this problem. Yet it remains. It seems odd to me. In fact looking at the backup I have, g-wrap is not +REQUIRED_BY anything. I wonder if the port(s) is somehow broken? Either way... I think I'm gonna just wait till 6.2 is cut and then rebuild (again). Simply because this is quite a systemic problem. I'm not sure I can confidently clean it up 100%. If I fail to register (for lack of a better word) some port(s) in the database, they will never get updated, as my system will not know they are present. And eventually things will get too out of whack... odd things will begin happening... etc, etc. Lots of posts to questions@ later... someone will say "just rebuild the d#$% thing." :) I'll re-evaluate the situation at that time. Again, thanks for the response. -- Regards, Eric