How exactly does the base toolchain determine WHICH language to build with?

Chris H bsd-lists at
Sat Nov 8 20:52:19 UTC 2014

On Sat, 8 Nov 2014 14:46:21 +0100 Dimitry Andric <dim at> wrote

> On 08 Nov 2014, at 01:23, Chris H <bsd-lists at> wrote:
> > Sorry for the long title. I've been [needlessly] struggling
> > with getting ports within the ports tree to build, on a
> > fresh 11-CURRENT install from 2014-11-05. With custom
> > KERNEL and WORLD built, and installed.
> > Here's my situation, which has worked well since ~8.2;
> > make.conf(5)
> > src.conf(5)
> If you don't want to use and build clang at all, I think you also need
> these two settings (at least on recent -CURRENT):
> The latter variable determines whether /usr/bin/cc, /usr/bin/c++ and so
> on are linked to clang or gcc.  I suspect the root of all your problems
> is that you don't have this setting.
> > I'll neither argue, nor defend rational for w/o clang. To
> > boring and out of scope for this thread. That said; I
> > realize that lang/clang(33/34/35) is the default toolchain
> > for 10+, and that's just fine by me. So I shouldn't be
> > terribly surprised when install kernel/world, followed by
> > make delete-old removes the clang built, or provided by
> > the base install from the (initial) install procedure. But
> > what _does_ surprise me, is that the install of lang/gcc-48
> > does _not_ become the compiler of choice with the above
> > $ENV, after [seemingly] deleting clang.
> It does not work that way.  If you configure the base system to use gcc
> only, individual ports can decide that they need newer C++ support, or
> other features not available in the version of gcc in base (which is
> very old by now).  In that case, they will use one of the gcc ports,
> or possibly even one of the clang ports.
Ahh. Thank you. It's now perfectly clear, and makes complete sense, now.
For the record; I have nothing against clang/llvm, per se.
I am just looking to obtain a bit more control over my environment.
As this installation is intended for development purposes. In
fact, I'll probably install all 3 versions of lang/clang. :)
Oh, and GNC C, as well.

Thank you again, for the reply. Now that I have also been informed
about freebsd-toolchain at . I should probably take this opportunity
to apologize for the noise, and thank all for their thoughtful
replies. :)

> -Dimitry

More information about the freebsd-ports mailing list