[cfe-dev] clang + libcxx + ninja

Reid Kleckner rnk at google.com
Mon Apr 6 11:34:30 PDT 2015


I think Alexey might know who wrote the libc++ tsan and msan build scripts.
I suspect you don't need those, and that your build would succeed if you
built libcxx instead of 'all'.

Clang (and clang tools) should work with all the major versions of
libstdc++. I suspect fixing this will be more fruitful than trying to port
your codebase to a new STL implementation. I think you sent email about
those problems, let me try to go find those threads and reply there.

On Sun, Apr 5, 2015 at 2:42 PM, Peter Stirling <peter at pjstirling.plus.com>
wrote:

> Hi,
> Since clang tools currently choke when using the gcc 4.9.2 libstdc++
> headers (and 4.8.3, and 4.8.2, and testing against older versions is
> seriously inconvenient), I decided to try libcxx to work around it. I
> checked out the source as described in [1], but that caused the llvm build
> to fail with the following error:
>
> [9/24] Performing configure step for 'libcxx_tsan'
> FAILED: cd /home/peter/Programming/llvm/ninja/projects/compiler-rt/
> lib/tsan/libcxx_tsan/src/libcxx_tsan-build && /usr/bin/cmake -P
> /home/peter/Programming/llvm/ninja/projects/compiler-rt/
> lib/tsan/libcxx_tsan/src/libcxx_tsan-stamp/libcxx_tsan-configure.cmake &&
> /usr/bin/cmake -E touch /home/peter/Programming/llvm/
> ninja/projects/compiler-rt/lib/tsan/libcxx_tsan/src/
> libcxx_tsan-stamp/libcxx_tsan-configure
> CMake Error at /home/peter/Programming/llvm/ninja/projects/compiler-rt/
> lib/tsan/libcxx_tsan/src/libcxx_tsan-stamp/libcxx_tsan-configure.cmake:16
> (message):
>   Command failed: 1
>
>    '/usr/bin/cmake' '-DCMAKE_C_COMPILER=/home/
> peter/Programming/llvm/ninja/./bin/clang' '-DCMAKE_CXX_COMPILER=/home/
> peter/Programming/llvm/ninja/./bin/clang' '-DCMAKE_C_FLAGS=
> -fsanitize=thread' '-DCMAKE_CXX_FLAGS= -fsanitize=thread'
> '-DCMAKE_BUILD_TYPE=Release' '-DCMAKE_INSTALL_PREFIX:PATH=/
> home/peter/Programming/llvm/ninja/projects/compiler-rt/lib/tsan/libcxx_tsan'
> '-GNinja' '/home/peter/Programming/llvm/llvm/projects/libcxx'
>
>   See also
>
> /home/peter/Programming/llvm/ninja/projects/compiler-rt/
> lib/tsan/libcxx_tsan/src/libcxx_tsan-stamp/libcxx_tsan-configure-*.log
>
> Close inspection reveals that it tries to run cmake passing -GNinja (the
> same as the main build) but doesn't supply -DCMAKE_MAKE_PROGRAM. Editing
> the file [2] to inject the missing parameter lets the build succeed, but as
> that file is generated, this edit needs to be repeated sometimes when I
> update svn, and I'm not sure where it is generated from for a more
> permanent fix.
>
> [1] http://libcxx.llvm.org/
> [2] $BUILD/projects/compiler-rt/lib/tsan/libcxx_tsan/src/
> libcxx_tsan-stamp/libcxx_tsan-configure.cmake
>
> _______________________________________________
> cfe-dev mailing list
> cfe-dev at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20150406/af363207/attachment.html>


More information about the cfe-dev mailing list