gpt4 book ai didi

c++ - 我应该在 Windows 上为 clang 使用哪个链接器

转载 作者:太空狗 更新时间:2023-10-29 21:36:23 25 4
gpt4 key购买 nike

我只是想了解如何在 Windows 上使用 Clang/LLVM(不是 Microsoft Clanf/C2 工具链)。

请澄清我的理解: here是对过程的描述。

我的理解是否正确,要生成可执行文件,应明确执行这些步骤:

  • clang.exe(前端编译器)
  • llc.exe(后端代码生成器)
  • lld.exe(链接器)

或隐含地:

  • 只是运行 clang.exe(它自己运行其他工具)

但是,在上面的手册中,建议使用 Microsoft Linker (link.exe),为什么?

  • 因为这个链接器可以生成 .pdb 文件供 ms 调试器调试? link.exe 和lld.exe 工作结果的唯一区别是什么?
  • 如果我仍然使用 lld.exe - 这将为 win 平台生成有效的可执行文件,不是吗?
  • 如果我将使用 lld - 这可以生成自己的格式调试信息以便在 Windows 上使用 lldb 吗?

最佳答案

link.exe 是 Windows 上的标准链接器,并且(从 LLVM 3.9 开始)可以生成 pdb 调试信息以使用 visual studio 进行调试。如果您打算使用 lldb,Link.exe 不会保留 DWARF 调试信息。

lld 将生成有效的 DWARF 调试信息,但我上次检查时(我认为 LLVM 3.7 左右)它只适用于 x86。它将链接一个 x64 可执行文件,但不提供有效的调试信息。

更多信息在这里。 http://lld.llvm.org/windows_support.html

关于c++ - 我应该在 Windows 上为 clang 使用哪个链接器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40665412/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com