[cfe-dev] system search path for option -stdlib=libc++
Reid Kleckner
rnk at google.com
Fri Jan 31 09:15:38 PST 2014
I wonder if it'd useful for Clang to be able to process multiple sysroots,
to handle this kind of situation where some stuff (libc++, llvm, maybe
more) are installed to /some/prefix/, but the user still wants to search
/usr/ for headers and libs. Today I believe we just require the user to
pass lots of -isystem and -L args.
That sounds a lot like Apple's framework concept.
On Fri, Jan 31, 2014 at 7:08 AM, Frank Rehwinkel
<frankrehwinkel at gmail.com>wrote:
> Hi,
>
>
> I would like to compile and install llvm/clang/libcxx into a local
> directory on Linux (Gentoo). I haven't found the right combination of
> cmake -D flags to make the -stdlib=c++ option work.
>
> The first part seems straightforward enough:
>
> cmake -G Ninja \
>
> -DCMAKE_BUILD_TYPE=Release \
>
> -DCMAKE_INSTALL_PREFIX=/local/llvm/3.4/usr \
>
> -DFFI_INCLUDE_DIR=/usr/lib64/libffi-3.0.11/include \
>
> -DFFI_LIBRARY_DIR=/usr/lib64 \
>
> -DLLVM_BUILD_TESTS=ON \
>
> -DLLVM_ENABLE_FFI=ON \
>
> -DLLVM_EXTERNAL_MSBUILD_BUILD=OFF \
>
> -DLLVM_TARGETS_TO_BUILD=host \
>
> -DPYTHON_EXECUTABLE=/usr/bin/python2 \
>
> -DLIBCXX_CXX_ABI=libstdc++ \
>
>
> -DLIBCXX_LIBSUPCXX_INCLUDE_PATHS="/usr/lib/gcc/x86_64-pc-linux-gnu/4.7.3/include/g++-v4;/usr/lib/gcc/x86_64-pc-linux-gnu/4.7.3/include/g++-v4/x86_64-pc-linux-gnu"
> \
>
> -DLIBCXX_ENABLE_SHARED=YES \
>
> ${SRC}
>
>
> But the system header search path used by clang++ when the libc++ stdlib
> is used then is completely wrong. Looking through the source code, I
> stumbled on the parameters DEFAULT_SYSROOT and gave that a try.
>
> -DDEFAULT_SYSROOT=/local/llvm/3.4
>
> and that made the system header search path look good as far as finding
> the libc++ headers, but now the plain old /usr/include directory is no
> longer in the search path so /usr/include/features.h is not found.
>
> Is building clang and libcxx on Linux and installing to a local directory
> supported and if so, please, what did I overlook or not know?
>
> (I built with gcc, version 4.7.3 as you may have surmised by the paths
> above.)
>
> Thanks,
> -Frank
>
>
> _______________________________________________
> 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/20140131/7bb9711a/attachment.html>
More information about the cfe-dev
mailing list