【问题标题】:Problems installing Clang in windows在 windows 中安装 Clang 的问题
【发布时间】:2016-03-05 22:28:38
【问题描述】:

我一直在尝试使用 windows xp 在虚拟机中安装 clang,首先我尝试从此页面使用适用于 Windows 的预构建二进制文件:LLVM Download,我收到了这个错误:

Failed to find MSBuild toolset directory

所以,我尝试按照此问题中的步骤说明编译 clang:Compiling Clang in Windows,但我也收到错误:

In file included from C:\llvm-3.7.0.src\lib\Support\DynamicLibrary.cpp:40:0:
C:\llvm-3.7.0.src\lib\Support\Windows/DynamicLibrary.inc:34:56: error: 'PENUMLOA
DED_MODULES_CALLBACK64' has not been declared
typedef BOOL (WINAPI *fpEnumerateLoadedModules)(HANDLE,PENUMLOADED_MODULES_CALL
BACK64,PVOID);
                                                    ^
C:\llvm-3.7.0.src\lib\Support\Windows/DynamicLibrary.inc: In static member funct
ion 'static llvm::sys::DynamicLibrary llvm::sys::DynamicLibrary::getPermanentLib
rary(const char*, std::string*)':
C:\llvm-3.7.0.src\lib\Support\Windows/DynamicLibrary.inc:70:65: error:  invalid conversion from 'BOOL (__attribute__((__stdcall__)) *)(PSTR, DWORD64, ULONG, PVOID) {aka int (__attribute__((__stdcall__)) *)(char*, long long unsigned int, long
unsigned int, void*)}' to 'int' [-fpermissive]
 fEnumerateLoadedModules(GetCurrentProcess(), ELM_Callback, 0);
                                                             ^
lib\Support\CMakeFiles\LLVMSupport.dir\build.make:1912: recipe for  target 'lib/S
upport/CMakeFiles/LLVMSupport.dir/DynamicLibrary.cpp.obj' failed
mingw32-make[2]: *** [lib/Support/CMakeFiles/LLVMSupport.dir/DynamicLibrary.cpp.
obj] Error 1
CMakeFiles\Makefile2:200: recipe for target 'lib/Support/CMakeFiles/LLVMSupport.
dir/all' failed
mingw32-make[1]: *** [lib/Support/CMakeFiles/LLVMSupport.dir/all] Error 2
Makefile:148: recipe for target 'all' failed
mingw32-make: *** [all] Error 2

所以我现在真的不知道该怎么做或者我做错了什么,所以这个主题的任何帮助都会有所帮助。

【问题讨论】:

    标签: c++ windows installation clang llvm-clang


    【解决方案1】:

    您可以看到“IoT Development with PlatformIO”,它显示了相同的错误消息。

    查看安装的文件,在C:\Program Files\LLVM\tools\msbuild目录下发现了一个install.bat
    它在诸如“%ProgramFiles%\MSBuild\Microsoft.Cpp\v4.0\Platforms\%PLATFORM%\PlatformToolsets”之类的位置搜索 MSBuild 工具集目录,如果找到,则将一些文件从 LLVM 复制到 MSBuild 目录。
    否则会抛出上述错误。
    这确认该错误与此环境无关,我们可以忽略它。

    在您的情况下,您可能无法忽略它,因此请仔细检查该文件夹的内容/存在。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-09-16
      • 2012-01-07
      • 1970-01-01
      • 2012-06-29
      • 1970-01-01
      • 2012-07-24
      • 2015-12-08
      相关资源
      最近更新 更多