我已经构建了libc ++,并希望在编译程序时使用它? 所以我有类似的东西
clang++ -stdlib=~/libc++/libc++.so main.cpp
但这不起作用。构建应用程序时如何使用我的自定义构建的libc ++?
答案 0 :(得分:2)
此信息来自llvm documentation about libcxx。
如果要对clang使用自定义libc ++,则必须指定如下参数:
$ clang++ -std=c++11 -stdlib=libc++ -nostdinc++ -I<path_to_libcxx>/include/c++/v1 -L<path_to_libcxx>/lib -Wl,-rpath,<path_to_libcxx>/lib main.cpp ${end_of_compile_line...}
或者,您可以将库的路径放在LD_LIBRARY_PATH中(假设您在Linux下):
export LD_LIBRARY_PATH=<libcxx-install-prefix>/lib:$LD_LIBRARY_PATH
并仅使用以下选项进行编译:
$ clang++ -stdlib=libc++ -nostdinc++ -I<path_to_libcxx>/include/c++/v1 -L<path_to_libcxx>/lib main.cpp -o ${end_of_compile_line...}