Re: Compilling CURRENT with libc++

From: Dimitry Andric <dim_at_FreeBSD.org>
Date: Thu, 25 Oct 2012 13:58:39 +0200
On 2012-10-25 13:41, Piotr Kubaj wrote:
> Is it actually possible? I've used clang before for compiling world, but
> when I try to use libc++, it fails with several errors. It's a quite
> recent revision, with the newest libc++ MFV.

Currently, it is rather tricky, since we do not have a proper way of
bootstrapping it yet.  For now, you would have to do the following:

- Enable WITH_LIBCPLUSPLUS in src.conf
- cd /usr/src/lib/libcxxrt && make obj && make depend && make &&
   sudo make install
- cd /usr/src/lib/libc++ && make obj && make depend && make &&
   sudo make install
- Now you should have the libc++ headers and libraries installed in
   base.  (Check /usr/include/c++/v1/* and /usr/lib/libc++*.)
- In make.conf or src.conf, add:

     CXXFLAGS+= -stdlib=libc++ -std=c++11

   or use another -std= setting, except -std=gnu++98 or std=c++98.  Might
   as well turn it to eleven, anyway. :-)
- Build world, kernel and install both in the regular way.
- Now you should have a world where all C++ programs in base are linked
   against libc++ and libcxxrt.

Please note: while I have used this for at least a few months, and I
have encountered no (crippling) problems yet, there will most likely be
bugs, so take care!

For example, Jan Beich reported recently that devd seems to have trouble
with some regular expressions in devd.conf, if it is linked to libc++.
It it still unknown what causes this.
Received on Thu Oct 25 2012 - 09:58:39 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:31 UTC