perl upgrade broke 5.3 system
Joshua Tinnin
krinklyfig at spymac.com
Mon Feb 7 10:20:04 PST 2005
On Monday 07 February 2005 09:02 am, "dave" <dmehler26 at woh.rr.com>
wrote:
> Hello,
> I just updated ports after being away for two weeks. The update
> process itself went fine, my problem came when i ran the command to
> update perl-dependent ports as suggested in /usr/ports/UPDATING. I
> got a bunch of failed updates, php4-extensions, and any of my p5*
> ports, apache2, subversion, ices, etc. I've tried manually running
> portupgrade packagename but all i get is a prompt, it's as if
> portupgrade thinks everything is updated, but dependent perl ports
> are not working. The noticer was when MailScanner couldn't find
> SpamAssassin although the latest version of both ports are installed.
Well, it's always tricky. What I did this time is:
% pkg_info -R perl\* > ~/perlports
A list of dependencies is now in the text file perlports. In order to
get a working environment, I did this first (I use xfce4 on this
machine):
# portupgrade -rRf xfce
Then I force-upgraded all the rest of the xorg ports that weren't
upgraded by that command, then all libraries, then individual programs,
and finally the ports in meta ports, then the meta ports themselves.
Most of this was done automatically; I copied perlports to a different
file, edited out some lines, and added commands, put the list in the
order stated previously, set the file as executable, then I ran it as a
script. Most of the lines in the script look like this (yelp is an
example):
portupgrade -f yelp-2.6.5 ;
It took a long time, as always, but I had zero problems. I also had
xfce4, SpamAssassin, KMail and some other programs I use all the time
up and running right away. I'm sure this could be done in a more
automated fashion, but I've always run into dependency problems that
way, if ports aren't upgraded in the right order, e.g., libraries
first, so there's always clean up work to do. I avoided that this time,
though it took a little longer to have each upgrade be a separate line
in a script.
> On another question when i install a port if it installs
> dependencies and those are only needed by that port, when i uninstall
> the port i'd like to updte and remove those dependencies as well, is
> this doable? Some urgency!
Yes, as long as those dependencies aren't needed elsewhere. You can run
the pkg_info -r command to find out, then run pkg_info -R on the
dependencies, or you can run:
make pretty-print-run-depends-list
make pretty-print-build-depends-list
in the appropriate port folder (e.g., /usr/ports/www/firefox). There's
also sysutils/pkg_cutleaves .
- jt
More information about the freebsd-questions
mailing list