c++ - 与 Boost 错误链接

标签 c++ visual-c++ boost linker

我刚刚下载并运行了 1.42 版的 boost 安装程序(来自 boostpro.com),并根据入门指南设置了我的项目。但是,当我构建程序时,出现此链接器错误:

LINK : fatal error LNK1104: cannot open file 'libboost_program_options-vc90-mt-gd-1_42.lib' 

构建日志添加了这个(我用 * 替换了项目特定的路径):

Creating temporary file "******\Debug\RSP00001252363252.rsp" with contents
[
/OUT:"*********.exe" /INCREMENTAL /LIBPATH:"C:\Program Files\boost\boost_1_42_0\lib" /MANIFEST /MANIFESTFILE:"Debug\hw6.exe.intermediate.manifest" /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /DEBUG /PDB:"********\Debug\***.pdb" /SUBSYSTEM:CONSOLE /DYNAMICBASE /NXCOMPAT /MACHINE:X86 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib

".\Debug\****.obj"

".\Debug\****.exe.embed.manifest.res"
]
Creating command line "link.exe @********\Debug\RSP00001252363252.rsp /NOLOGO /ERRORREPORT:PROMPT"

我也给 info@boostpro.com 发了邮件(邮件与此非常相似),但我想这样会更快。

编辑: 是的,我在问这个问题之前检查了文件是否存在,是的,它的路径在链接器属性中,在“附加库目录”下(我试过和不带引号)。

编辑 2: 它肯定会看到路径,因为它出现在构建日志的第 3 行中......

编辑 4: 没关系,它在 Release模式或 Debug模式下不起作用,但不起作用的文件会适当更改(当我将运行时库更改为不同类型的多线程——我不认为单线程是一种选择,尽管它对我有用)。现在尝试命令行。

最佳答案

文档和我的实际安装之间存在细微差别。在文档路径中有“boost_1_42_0”的地方,安装程序使我的路径为“boost_1_42”。修复后,它就可以工作了。

关于c++ - 与 Boost 错误链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2568612/

相关文章:

c++ - 可以从 Windows DLL 中的全局变量创建/销毁 std::threads 吗?

c++ - 我可以使用 C++11 智能指针作为 C++ Actor Framework 中的消息返回类型吗?

c++ - 为什么用户定义的移动构造函数会禁用隐式复制构造函数?

c++ - 编译器选择不使用 REP MOVSB 指令进行字节数组移动

c++ - 如何自动将 POD 结构(不使用 .proto 文件)序列化为 Protocol Buffer?

c++ - BOOST_STATIC_ASSERT 的命名空间范围

c++ - 检查模板类型是否在可用类型列表中

c++ - 具有静态存储的变量地址模板

c++ - 在模板类中使用 std::allocator 时出错

c++ - 为什么 Visual Studio 2013 对此类成员 decltype 有问题?