在Windows上使用libc++吗? [英] Use libc++ on Windows?
本文介绍了在Windows上使用libc++吗?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
libc++是否支持在Windows上使用Clang/LLVM作为本机进行引用/包含和编译?对于原住民来说,我的意思是不依赖于明威和西格温。我没有找到很多关于这方面的文档,但我认为应该支持它,因为clang for Windows已经发布了很长一段时间。
推荐答案
仅更新。现在有试验性支持(2018年初):
https://libcxx.llvm.org/docs/BuildingLibcxx.html#experimental-support-for-windows
(来自链接)
由于您已签出忍者和libcxx/llvm,因此可以通过
编译libcxx> cmake -G Ninja ^
-DCMAKE_MAKE_PROGRAM=/path/to/ninja ^
-DCMAKE_SYSTEM_NAME=Windows ^
-DCMAKE_C_COMPILER=clang-cl ^
-DCMAKE_C_FLAGS="-fms-compatibility-version=19.00 --target=i686--windows" ^
-DCMAKE_CXX_COMPILER=clang-cl ^
-DCMAKE_CXX_FLAGS="-fms-compatibility-version=19.00 --target=i686--windows" ^
-DLLVM_PATH=/path/to/llvm/tree ^
-DLIBCXX_ENABLE_SHARED=YES ^
-DLIBCXX_ENABLE_STATIC=NO ^
-DLIBCXX_ENABLE_EXPERIMENTAL_LIBRARY=NO ^
path olibcxx
> /path/to/ninja cxx
自18年4月23日起,它将安装到Program Files(X86)中,即使编译为x86-64.(可以通过将上面的i686更改为x86_64来实现)。
2020年11月更新:我现在使用一个名为llvm-mingw的包。
此软件包包括带有包装器的clang编译器工具链,以支持各种GCC风格的可执行文件(例如gcc.exe、g++.exe、x86_64-w64-mingw32-gcc.exe),并且可以开箱即用来针对mingwlibc++进行编译(您不必单独安装mingw,mingw库随软件包一起提供)。
llvm-mingw还很年轻,但具有mingw-w64的大部分特征。未实现的功能包括:- lld链接到DLL(这是gnu ld的功能,但不是llvm实现)
- lldb没有python包装器,所以很多IDE无法使用调试器。Visual Studio代码似乎有它自己的链接,所以LLDB SOE可以使用VS代码。人们现在正在做这件事。
可在作者的GitHub Repo上获得发行版。我的winlua.net站点上有一个可用的二进制安装程序。
这篇关于在Windows上使用libc++吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文