我是新手来提升lib并尝试编译一个关于序列化如何与http://www.boost.org/doc/libs/1_42_0/libs/serialization/example/demo.cpp中的boost库一起工作的简单示例
编译时我得到链接器错误:
1>LINK : fatal error LNK1104: cannot open file 'libboost_serialization-vc80-mt-sgd-1_42.lib'
我还尝试复制并将.lib文件放在项目目录中,但VS 8.0编译器仍然无法链接到它。
答案 0 :(得分:1)
完全回答问题..
错误来自自动链接Boost工具,它告诉您它选择自动链接您没有编译的序列化库的版本。您可以按照构建源代码中的说明尝试编译不同的版本(请参阅building from source)。具体来说,库名称上的“mt-sgd”标记告诉您它正在寻找具有库调试版本的多线程静态调试C ++运行时(请参阅library naming)。像你一样切换到“/ MDd”,使编译器切换到多线程动态调试C ++运行时(参见MSVC run-time flags),这恰好是Boost的默认构建。因此它就会找到它,因为你已经建立了它。