Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 22 Jul 2008 08:16:38 -0700
From:      "Garrett Cooper" <yanefbsd@gmail.com>
To:        "Jeremy Chadwick" <koitsu@freebsd.org>
Cc:        David Southwell <david@vizion2000.net>, freebsd-ports@freebsd.org
Subject:   Re: gcc versions following upgrade 6.3 >7.0
Message-ID:  <7d6fde3d0807220816y7817c29g263afc77786f16b0@mail.gmail.com>
In-Reply-To: <20080722081630.GA86993@eos.sc1.parodius.com>
References:  <AB217A93D96E483695869A497569A44A@sleuth64> <20080721110910.GA30467@eos.sc1.parodius.com> <7d6fde3d0807212327j5947fd95we4ca9a16e9769124@mail.gmail.com> <200807220107.53942.david@vizion2000.net> <20080722081630.GA86993@eos.sc1.parodius.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Jul 22, 2008 at 1:16 AM, Jeremy Chadwick <koitsu@freebsd.org> wrote:
> On Tue, Jul 22, 2008 at 01:07:53AM -0700, David Southwell wrote:
>
> The "base system" does not add anything to the ports/pkg database.  The
> reason you have gcc 4.1.3 and gcc 4.2.5 on your machine is because some
> other port/package depended/depends on them.  pkg_info -R will solve
> that mystery.
>
> As I said before: some ports/packages may require a newer (or older)
> version of GCC, in which case, you'll end up with two (or more) versions
> of gcc on your system -- one in the base and one (or more) managed via
> ports.
>
> Regardless of what Garrett and others say about how multiple compilers
> on a system "works great", I do not advocate it.  There are many catches
> which can/will surprise you down the road, especially with regards to
> library linking order, symbol versioning, and a couple other things.
> I'm sorry, but in my eyes it's risky behaviour.  We've been down this
> road before back when perl was in the base system, for similar reasons.

The complication and mess stems from the fact that you'll need to
compile components using an absolute prefix to the compiler or have a
script which manages gcc and the binutils as a series of symlinks
(Gentoo Linux does that).

Not all projects unfortunately have wizened up to the fact that
keeping something cross-compile safe is the best way to go so things
may fail unless you have robust compile tools scripts to help manage
everything.

Cheers,
-Garrett



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