最近在测试redis使用,遇到问题不少,焦头烂额的,经过模式与参考其他网友的心得,总结如下,以供准备玩redis的朋友参考:
1.win7 64位,vs2012+redis2.6
1.1 redis源码下载:https://github.com/MSOpenTech/redis
1.2 redis源码编译
1)解压压源码压缩包,进入msvs文件夹,在此文件中有vs工程文件,使用vs2012打开,编译即可生成需要的redis相关exe与lib
2)这里需要说明的是,redis2.6版本使用vs2012编译没问题,如果是redis3.0版本,使用vs2013/或vs2015编译;
3)编译库文件的时候关闭GS选项(c/c++ -》 所有选项 -》安全检查),不然会包__report_rangecheckfailure错误
1.3 新建vs工程
1)c/c++ -》 代码生成 -》运行库 -》多线程调试(/mtd)
2)链接器 -》附加库目录 -》选择hiredis.lib和Win32_Interop.lib(2.6版本此库可能没有,没有就不用管了)所在目录
3)链接器 -》附加依赖项 -》添加hiredis.lib、Win32_Interop.lib(2.6版本此库可能没有,没有就不用管了)、ws2_32.lib(也可以在代码里面添加 #pragma comment(lib, "XXX.lib"))
4)xxx\src\Win32_Interop 目录下 win32fixes.c 和win32fixes.h添加vs进工程
5)hiredis.h 文件添加进工程,此文件是redis接口
6)C++预处理器:添加_CONSOLE
_CRT_SECURE_NO_WARNINGS
_CRT_NONSTDC_NO_DEPRECATE
_CRT_SECURE_NO_DEPRECATE
7)链接器->输入->忽略所有默认库: 应该设置为"否"
8)拷贝hiredis.lib和Win32_Interop.lib到工程目录下,不知道拷贝过来后是否不需要第2步了,没有试试
9)c/c++ -》常规,附加包含目录需要把“redis-3.0\deps\hiredis”添加进来,也可以手动把需要的文件拷贝到自己的工程下

2.win10 64位 vs2015+redis3.0
1.1 源码下载,编译与上面win7下相同
1.2 vs工程基本与上面win7相同,win10下redis3.0编译会生成Win32_Interop.lib,添加此库进工程后,不需要再添加win32fixes.c 和win32fixes.h进工程了

3.linux下
linux下比较顺利,随便找了一个帖子照着做就过了,这里就不写了


注意事项:
1)32程序对于32位hiredis.lib,64位程序对应64位hiredis
2)debug版本程序对应 debug版本hiredis.lib,release版本程序对应release版本hiredis.lib
3)编译hiredis.lib库的vs版本需要与工程vs版本一致

posted on 2018-11-23 14:19  品山1  阅读(817)  评论(0编辑  收藏  举报