В локально созданном clang отсутствует libc ++ include-пути на Mac - PullRequest
0 голосов
/ 25 сентября 2019

Я собираю clang из исходного кода для локально созданного llvm, но полученный исполняемый файл clang ++ не может найти пути включения libc ++.В частности, я делаю следующие шаги:

  1. $ git clone https://github.com/llvm-mirror/llvm && cd llvm && git checkout <specific revision>
    $ mkdir build && cd build && \
        cmake .. && \
        make -j 4 && \
        make install DESTDIR=../install
    
  2. $ git clone https://github.com/llvm-mirror/clang && cd clang && git checkout <specific revision>
    $ mkdir build && cd build && \
        cmake -DLLVM_CONFIG=../path/to/locally-built/llvm-config \
              -DCLANG_DEFAULT_CXX_STDLIB=libc++ 
              .. && \
        make -j 4
    

Однако мой локально созданный clang ++ не может найтилокальные libc ++ включают в себя пути:

$ cat foo.cpp
#include <iostream>
$ ./clang++ -v foo.cpp # my locally built clanfg
...
clang -cc1 version 9.0.0 based upon LLVM 9.0.0svn default target x86_64-apple-darwin18.6.0
...
#include "..." search starts here:
#include <...> search starts here:
 /Users/ccotter/git/clang/build/lib/clang/9.0.0/include
 /System/Library/Frameworks (framework directory)
 /Library/Frameworks (framework directory)
End of search list.
foo.cpp:1:10: fatal error: 'iostream' file not found
#include <iostream>
         ^~~~~~~~~~
$ clang++ -v foo.cpp # xcode's clang
...
#include "..." search starts here:
#include <...> search starts here:
 /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1
 /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/11.0.0/include
 /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include
 /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include
 /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks (framework directory)
End of search list.

Я использую набор инструментов xcode 11 для Mac OS Mojave для сборки llvm + clang из исходного кода здесь.Как я могу получить свой локально собранный clang ++, чтобы увидеть предоставляемые xcode заголовки libc ++?Это шаг, который мне нужно указать при настройке cmake?

...