请告诉我如何使用 mongodb 的 c++ 驱动程序构建程序。没有因为我的英语不好而发火。
我的环境
- Windows7 64位
- Visual Studio Ultimate 2012(x64 发布目标项目)
我执行了以下步骤。
- 我安装了 Ptython 2.7.2、Python for Windows 扩展和 Scons 2.3.0。
- 我安装了 boost 1.54.0。我执行了 'boostrap' 和 'b2 -a --build-type=complete --address-model=64 --link=static --runtime-link=static'
- 我下载了mongodb-linux-x86_64-v2.4-latest.tgz。
我在 SConstruct 中添加了以下文本。
env.Append(CPPPATH=['C:\\boost\\boost_1_54_0']) env.Append(LIBPATH=['C:\\boost\\boost_1_54_0\\stage\\lib']) env.Append(CPPDEFINES=["_UNICODE"]) env.Append(CPPDEFINES=["UNICODE"])
我执行了“scons mongoclient”。
- 我制作了一个 Visual Studio C++ 项目。
- 我在项目中设置了“Release”和“x64”。
- 在属性页/配置属性/C C++/常规/附加包含目录中,我设置了“C:\boost\boost_1_54_0”和“C:\mongo\mongo-cxx-driver-v2.4\src”。
- 在属性页/配置属性/链接器/常规/附加库目录中,我设置了“C:\boost\boost_1_54_0\stage\lib”和“C:\mongo\mongo-cxx-driver-v2.4”。
- 在属性页/配置属性/链接器/输入/附加依赖项中,我设置了“mongoclient.lib”、“ws2_32.lib”和“psapi.lib”。
- 在属性页/配置属性/链接器/输入/忽略特定默认库中,我设置了“msvcprt.lib”和“LIBCMT.lib”。
- 在属性页/配置属性/C C++/预处理器/预处理器定义中,我设置了“_CRT_SECURE_NO_WARNINGS”。
- 在属性页/配置属性/C C++/代码生成/运行时库中,我设置了“多线程 (/MT)”。
我使用驱动程序制作了一个程序。但是,程序的构建解决方案失败了。
1>mongoclient.lib(stringutils.obj) : error LNK2001: unresolved external symbol __security_check_cookie
1>mongoclient.lib(initializer_dependency_graph.obj) : error LNK2001: unresolved external symbol __security_check_cookie
1>mongoclient.lib(initializer.obj) : error LNK2001: unresolved external symbol __security_check_cookie
....
fatal error LNK1120: 154 unresolved externals
如果您指出步骤中的任何奇怪之处,如果对我有帮助。
谢谢你。