gpt4 book ai didi

c++ - 如何使 Windows 上的 Clang 链接到不同的运行时

转载 作者:可可西里 更新时间:2023-11-01 09:19:32 24 4
gpt4 key购买 nike

在尝试用 C++ 构建个人项目时,我遇到了一个问题。我不确定它何时出现,因为我通常在 Linux 环境中处理该项目,但希望该项目在 Windows 上运行。

不幸的是,我正在使用的编译器 Clang 开始向我抛出以下错误:

libboost_filesystem-vc140-mt-1_61.lib(operations.obj) : error LNK2038: mismatch detected for 'RuntimeLibrary': value 'MD_DynamicRelease' doesn't match value 'MT_StaticRelease' in buffer.obj

问题是我不知道如何告诉 Clang 底层编译器应该使用哪个运行时,如果不需要,我现在不希望使用 clang-cl

使 Windows 上的 Clang 链接到动态运行时的正确方法是什么?

最佳答案

我不确定我所做的哪一部分阻止了链接器的提示,但在我的构建脚本中,我将 -D_MT -D_DLL 指定为我的两个编译器和链接器选项以及我的我必须禁用默认库 (-Xlinker/NODEFAULTLIB) 并手动指定要链接的运行时版本(在我的例子中,-lmsvcrt -lucrt -lmsvcprt -lvcruntime)。这两个更改似乎已停止所有链接和编译错误。

关于c++ - 如何使 Windows 上的 Clang 链接到不同的运行时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39815836/

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