gcc versions following upgrade 6.3 >7.0

Garrett Cooper yanefbsd at gmail.com
Tue Jul 22 15:16:40 UTC 2008


On Tue, Jul 22, 2008 at 1:16 AM, Jeremy Chadwick <koitsu at 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


More information about the freebsd-ports mailing list