【问题标题】:clang-cl error: lld-link : error : undefined symbol: __divti3clang-cl 错误:lld-link:错误:未定义符号:__divti3
【发布时间】:2021-08-06 04:35:54
【问题描述】:

用clang-cl(Clang-11.0和MSVC2019)编译int128除法时出现这个错误。
代码如下:

__int128 a, b;
auto c = a / b;

和编译器输出:

1>lld-link :error : undefined symbol: __divti3
1>>>> referenced by <path>\int128.h:594

如何解决?

【问题讨论】:

    标签: c++ visual-c++ clang-cl


    【解决方案1】:

    您必须将您的可执行文件与clang_rt.builtins-x86_64.lib 链接。
    您可以在

    中找到它
    C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\<Version>\lib\x64
    

    【讨论】:

    • GCC 和 Clang 仅在 64 位模式下支持 128 位整数,即使在 Linux 中也是如此。这不是因为调用约定,因为仍然可以通过隐藏指针返回大型结构
    • 谢谢,我从 LLVM 添加它并且工作得很好:C:\Program Files\LLVM\lib\clang\13.0.0\lib\windows\clang_rt.builtins-x86_64.lib
    猜你喜欢
    • 2021-03-07
    • 2022-08-21
    • 1970-01-01
    • 1970-01-01
    • 2013-06-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-10
    相关资源
    最近更新 更多