Windows版Redis3.2.100中_off_t重定义问题解决

因为微软团队发现redis在Posix体系下,off_t被定义成64位,而在windows下被sys\types.h文件定义成32位,所以windows团队就在工程属性里定义了_OFF_T_DEFINED ,使32位的不生效,用自己定义在文件的,所以我们需要在自已的工程中,也进行同样的操作。

操作过程如下:

1、打开工程属性 — C/C++ — 预处理器中的预处理器定义增加_OFF_T_DEFINED定义,将_DEBUG定义更改为NDEBUG
2、打开工程属性 — C/C++ — 代码生成中的运行库将多线程(/MTD)更改为多线程(/MT)
3、将Redis相关头文件均放在系统头文件之前

 

另外一种方法是:不使用Win32_Interop.h头文件,因为在该头文件中也只是使用了Timeval数据类型,可以用系统中的WinSock2.h头文件进行替代。

操作过程和上面方法差不多,将_DEBUG定义更改为NDEBUG,将多线程(MTD)更改为多线程(/MT)即可。

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值