原文:http://blog.sina.com.cn/s/blog_52f26d0f0102v6hl.html
1:Leveldb和Leveldb编译所需要的boost都是x64版本
2:Leveldb windows版本下载路径为
https://leveldb.googlecode.com/archive/windows.zip
编译说明在
https://code.google.com/p/leveldb/source/browse/WINDOWS?name=windows
3:打开Visual Studio,“新建”->“从现有代码创建项目”,选择\leveldb-windows目录,项目名为leveldb,选择“静态链接库(lib)项目”。
4:打开属性管理器,选择“属性”->“C/C++”->”->“预处理器”,添加预编译宏“LEVELDB_PLATFORM_WINDOWS;OS_WIN”,这里是设置一下Windows平台的宏以便与Android等分开有选择的进行编译。
5:根据编译错误提示,添加包含路径 $(ProjectDir);$(ProjectDir)\include
6:修改 port.h
#if defined(LEVELDB_PLATFORM_POSIX)
#
#elif defined(LEVELDB_PLATFORM_CHROMIUM)
#
#elif defined(LEVELDB_PLATFORM_ANDROID)
#
#elif defined(LEVELDB_PLATFORM_WINDOWS)
#
#endif
7:将boost所在的目录 \boost_1_55_0加到工程的include目录中。
8:boost windows x64位的lib库的编译请参见“Boost windows x64版本编译”。将编译好的lib库添加到依赖库中。
9:直接编译,发现某些编译不过的文件,这些是用于其他系统,而不是用于windows系统的文件,所以可以全部排除掉。
鼠标右击 —>“从项目中排除”如下文件:
- port/port_android.cc |
|
|
|
如果该文件不存在,则不用排除了。
10:继续编译,排除一些编译出错的文件,这些文件是用来测试或者进行比较的文件,也是不需要的的,也需要排除掉,文件包括:
*_test.cc 和 *_bench.cc文件
还包括
db_bench_tree_db.cc
11:最后编译生成x64 的lib文件
另外一篇文章:http://blog.youkuaiyun.com/flyfish1986/article/details/46806893