は2018年1月9日http://planet.clang.org/
を見て確認してください "それを試してみてください!" とセクション:
すでに今日Windows上打ち鳴らす-CLとLLD-リンクを使用している場合、あなたはこれを試してみることができます。これを有効にするには、コンパイラ用とリンカ用の2つのフラグが必要です。 .debug $ Hセクションのコンパイラによるセクションを有効にするには、文書化されていない-mllvm -emit-codeview-ghash-section
フラグをに渡す必要があります。clang- cl(このフラグは将来的には消えてしまいます。これは、安定していて、デフォルトで有効になっていると思われます)。 lld-linkにこの情報を使用するように指示するには、/DEBUG:GHASH
をlldに渡す必要があります。
あなただけのいずれかのあなたの
C++プロジェクトに
-mllvm -emit-codeview-ghash-section
フラグを渡す必要があり
:地域、またはあなたがC:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\VC\VCTargets\Platforms\Win32\PlatformToolsets\LLVM-vs2017
または C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\VC\VCTargets\Platforms\x64\PlatformToolsets\LLVM-vs2017
で作成された「toolset.props」ファイルに直接それらを置く「コマンドラインをその他のオプション」 。
キーは、これらのCLIオプションを追加することで、あなたがLLD(別名LLD-リンク)を理解し、完全に埋めPDBを生成するために使用するデバッグ情報を発するように打ち鳴らすを言っているということですファイル。 がに限定されているものではなく、LLVM 7.0の1月9日、2018滴前に作られたものではありません。
toolset.targets:(任意のバージョン)
<Project ToolsVersion="14.1"
xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(VCTargetsPath)\Microsoft.CppCommon.targets" />
</Project>
toolset.props:(Win32版)x64の場合
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(VCTargetsPath)\Platforms\$(Platform)\PlatformToolsets\v141\Microsoft.Cpp.$(Platform).v141.props" Condition="Exists('$(VCTargetsPath)\Platforms\$(Platform)\PlatformToolsets\v141\Microsoft.Cpp.$(Platform).v141.props')"/>
<Import Project="$(VCTargetsPath)\Platforms\$(Platform)\PlatformToolsets\v141\Toolset.props" Condition="Exists('$(VCTargetsPath)\Platforms\$(Platform)\PlatformToolsets\v141\Toolset.props')"/>
<PropertyGroup>
<LLVMInstallDir>$(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\LLVM\LLVM)</LLVMInstallDir>
<LLVMInstallDir Condition="'$(LLVMInstallDir)' == ''">$(Registry:HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\LLVM\LLVM)</LLVMInstallDir>
<ExecutablePath>$(LLVMInstallDir)\msbuild-bin;$(ExecutablePath)</ExecutablePath>
<LibraryPath>$(LLVMInstallDir)\lib\clang\7.0\lib\windows;$(LibraryPath)</LibraryPath>
</PropertyGroup>
<ItemDefinitionGroup>
<ClCompile>
<!-- remove the implicit vcxxx.pdb path to avoid rebuilds every time as clang-cl only supports /Z7 -->
<ProgramDataBaseFileName></ProgramDataBaseFileName>
<!-- Set the value of _MSC_VER to claim for compatibility -->
<AdditionalOptions>-m32 -fmsc-version=1913 %(AdditionalOptions)</AdditionalOptions>
</ClCompile>
</ItemDefinitionGroup>
</Project>
、-m32
から-m64
PPSを変更、私も持っていますネイティブのWindows-10-ARMアプリケーションを構築するためのMicrosoftのARMおよびARM64コンパイラをサポートしています(UWPの最新のCOM-Junkではありません)。しかし、まだとして、私はきちんとインテルコード-GENのために何-m32
と-m64
を行うにはARMのための同様のものを設定するには、打ち鳴らす源を掘り十分に行っていません。
良い答え:
は、これらの記事を参照してください。一方、LLVMによってv141ツールセットをサポートするのは時間です。 – plasmacel
はい、v140を必要とせずにv141をサポートするのは良いでしょう:-) – keith
LLVM-vs2014から名前を変更するのも良いでしょう! – keith