Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 29 Feb 2008 00:54:55 +0100
From:      Kris Kennaway <kris@FreeBSD.org>
To:        Marko Lerota <mlerota@iskon.hr>
Cc:        freebsd-stable@freebsd.org
Subject:   Re: Upgrading to 7.0 - stupid requirements
Message-ID:  <47C749CF.4010501@FreeBSD.org>
In-Reply-To: <867igo3cih.fsf@zid.claresco.hr>
References:  <867igo3cih.fsf@zid.claresco.hr>

next in thread | previous in thread | raw e-mail | index | archive | help
Marko Lerota wrote:
> In http://www.freebsd.org/releases/7.0R/announce.html says 
> 
> Updating Existing Systems
> 
>> An upgrade of any existing system to FreeBSD 7.0-RELEASE constitutes 
>> a major version upgrade, so no matter which method you use to update 
>> an older system you should reinstall any ports you have installed on 
>> the machine. This will avoid binaries becoming linked to inconsistent 
>> sets of libraries when future port upgrades rebuild one port but not 
>> others that link to it. This can be done with:
> 
> # portupgrade -faP
> 
> etc...
> 
> Why!!! Do you know how much time I have to spend with my PC to reinstall
> all of this programs from ports? Only openoffice takes one day! And where 
> is Gnome and such...There must be other way...I would not reinstall my 
> packages ;)
> 
> Then the servers. Why should I reinstall all my databases and such? I always
> liked that FreeBSD base (OS) is separated from packages. And no matter what I 
> do with the packages, my OS will always work. I don't want dependency
> hell like in Linux. Now you are telling me that my database might not work
> after upgrade to a new version. Is that it?

First, try to relax.

portupgrade -faP requests to reinstall everything from precompiled 
packages.  It will only fall back to compiling them locally if the 
package is unavailable (e.g. for legal reasons).

Second, the reason for this requirement is explained in the 
announcement.  In fact, it has *always* been required to recompile ports 
when moving to a new major release of FreeBSD, for guaranteed correct 
operation when some of the ports are updated later on.

This is not FreeBSD-specific advice.  It is true on any operating system 
when the underlying set of libraries changes in an incompatible way. 
However, on FreeBSD this *only* happens betweeen version branches.

Sometimes you can get away without the full recompile (this was more 
often true in the past), but thesedays so many ports do things like 
dynamic loading of shared libraries that it is effectively mandatory advice.

Feel free to ignore the advice if you continue to feel outraged by it, 
but it will not be our fault when your ports suddenly stop working 
properly after your subsequent port upgrades.

Kris



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?47C749CF.4010501>