On 26/08/2012 06:40, Jim Pazarena wrote: > My question is a general one, with the following specific example. > > I wanted to re-compile the latest phpmyadmin > but when I tried that, I get a "you must have the latest php5" (5.4.6)
The phpMyAdmin port only imposes the restriction that you must be running at least version 5 of php. It should work fine with any of lang/php5, lang/php53 or lang/php52. However, if you already had lang/php5 installed from a few months ago, that would predate the switch of that port from php 5.3.x to 5.4.x. This change did necessitate recompiling and reinstalling anything php dependent. Except that there is an alternative: you could switch to using lang/php53 instead. Unfortunately there are no instructions on how to do that without reinstalling everything in /usr/ports/UPDATING: it involves rewriting dependency information stored in /var/db/pkg and other somewhat risque manipulation of port metadata. Unless you know exactly what you're doing, a full-blown upgrade of php is more likely to give you a good result. > when I try php5 > I get a dependency of devel/pkgconf > > when I compile pkgconf, it conflicts with devel/pkg-config Now, this one is covered in UPDATING -- the 20120726 entry to be precise. Follow the instructions there, and you can avoid mass-reinstallation of everything that uses pkg-config / pkgconf (which is basically just about everything.) > Upon investigation it looks like pkg-config is replaced with pkgconf > however attempting to remove it show dozens of dependencies preventing > the removal. > > I find this series of challenges frequently as installs move along > in age, and usually wind up re-loading the entire server to beat the > challenge. > > There must be an easier way. Advice would be greatly appreciated. It's a lot easier if you update your system more frequently. Meaning each update will be smaller and you're less likely to run into a stack of problems all needing to be solved at once. Fortnightly or monthly updates should be sufficient. Also, get in the habit of reading /usr/ports/UPDATING -- it tells you about most of the gotchas, and more importantly, how to deal with them without having to nuke-and-repave. Finally, yes, this is an area where FreeBSD ends up consuming lots of time and CPU power. You might consider trying out pkgng (http://wiki.freebsd.org/pkgng), which is being developed as a solution to this and other problems. pkgng is just coming up to release-1.0: the code is in pretty good shape, but the infrastructure to support general use isn't in place yet. To get round that, try out poudriere as a way of building pkgs off-line and maintaining your own pkgng repository. pkgng makes upgrading even large numbers of ports very much faster. Cheers, Matthew -- Dr Matthew J Seaman MA, D.Phil. PGP: http://www.infracaninophile.co.uk/pgpkey
signature.asc
Description: OpenPGP digital signature