Boost线程库版本不匹配



我已经使用C++向量和Winforms创建了一个托管C++日志解析器应用程序。我想添加多线程,Boost似乎是比Winforms BackgroundWorker更好的选择,因为我希望能够用每个线程执行我现有的C++函数。我根据多个不同的教程多次安装Boost(最后一个教程:https://levelup.gitconnected.com/the-definite-guide-on-compiling-and-linking-boost-c-libraries-for-visual-studio-projects-c79464d7282d)并且当我尝试#include<boost/thread.hpp>

错误LNK1104无法打开文件"libboost_thread-vc143-mt-x64-1_78.lib">

我不知道当我安装了Boost 1_79而不是1_78时,它为什么要找这个库。我的.lib文件也有";mt-gd-x64";不仅仅是";mt-x64";。我已经在Project中指定了库的正确文件路径->属性->链接器->概述->其他图书馆目录。我还尝试过通过Visual Studio 2022 NuGet Package Manager安装Boost。该文件夹中的lib文件也略有偏离;vc120〃;而不是";vc143";。我甚至尝试更改.lib文件名以与链接器错误中的文件名完全匹配,但当我这样做时,我会遇到更多错误,如LNK1104无法打开文件"libboost_chrono-vc143-mt-x64-1_78.lib">

我只需要删除所有Boost文件并下载1_78版本然后重试吗?为什么Visual Studio在编译时查找错误的文件名?我的#include语句错了吗?

我最终通过下载boost 1_78,构建它,并指定该文件夹或1_79文件夹来解决这个问题。如果有人知道为什么程序要找1_78而不是1_79,请随时回复。也非常感谢George Gkasdrogkas,他写了关于如何安装Boost的教程,对我来说效果最好。教程链接在问题中:(

相关内容

  • 没有找到相关文章

最新更新