我试图在我的OpenFrameworks项目中包含Boost库,特别是当我将boost根目录添加到新项目的Additional Include Directories中时,我会看到错误LNK1104 cannot open file 'libboost_filesystem-vc141-mt-gd-x32-1_72.lib',尽管我甚至不需要文件系统库。
但是,当我将boost根目录添加到新创建的Additional Include Directories控制台项目的c++中时,错误不会显示,而且我可以毫无问题地使用库。
运行库是/MDd。
是什么导致了这个问题?破碎的助推?
一
发布于 2020-03-03 14:33:04
摘自对这个问题的评论。尽管这是不寻常的,但项目依赖项中的一个标头与文件系统库中的标头具有相同的名称。由于您首先将boost放在Additional Include Directories中,boost报头被包含在其中,而不是来自不同库的头。默认情况下,使用Visual Studio,boost会自动使用#pragma comment(lib, libname)插入链接命令,因此,包含此标头将导致链接依赖。
在这种情况下,尝试的一个解决方案是将boost移动到Additional Include Directories的末尾,因此当编译器搜索头部时,它将首先从前面的依赖项中找到一个。
https://stackoverflow.com/questions/60507128
复制相似问题