log4cplus 1.2 RC5 使用visual studio 2012编译

log4cplus已经更新到1.2 RC5。

下载下来,进行编译发现两个问题。经过修改后才能成功编译。

编译过程:

1.下载源码log4cplus-1.2.0-RC5.zip文件,最新版。找不到可以到谷歌,或者必应上查找就有下载的地址了。

2.解压源码

3.进入到控制台,进入到msvc10目录下执行 ..\scripts\msvc10_to_msvc11.cmd log4cplus.sln

4.此时在msvc10同级目录下增加了msvc11的目录,进入此目录打开log4cplus.sln即可。

5.编译,出现多个错误。但是主要是由于

LOG4CPLUS_HAVE_CXX11_SUPPORT,定义的问题。

由于visual studio 2012还不支持 = delete ;语法因此需要将这个宏定义注释掉。


然后重新编译,出现找不到标识符 FreeAddrInfoA的错误信息。在internal\socket.h文件中


由于支持FreeAddrInfoA函数的最低操作系统为windows 2003,因此

_WIN32_WINNT 必须大于等于 0x0502

但是项目中的值是0x0501。查看方法

项目->项目属性页->c/C++->预处理器->预处理器定义点击就能看到。但是不能修改,只能查看项目文件查找修改的方法。

关闭项目开发环境,发现msvc11目录下比普通的项目多了个log4cplus.props文件,打开已开果然是他。

定位到PreprocessorDefinitions,_WIN32_WINNT=0x0501;WINVER=0x0501修改为_WIN32_WINNT=0x0502;WINVER=0x0502即可。

重新打开项目成功编译。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值