Window平台编译log4cpp使用方法记录 (一)
1. 源码下载
先在网上下载源代码,点击:下载链接,下载后解压如下图,打开msvc10文件夹,源码是用vs2010打开,此处安装的是vs2019,打开会自动提示升级该项目,点击确定即可。
2 右击log4cpp项目选择生成,首次编译会出现一些错误,解决方法如下:
错误1:无法打开输入文件“Debug\NTEventLogCategories.res”。
解决方法:①在log4cpp项目工程中找到NTEventLogCategories.mc文件,选择该文件上然后右键选择属性,在弹出窗口中找到“配置属性–>自定义生成工具–>常规–>命令行”中修改编译命令,设置为如下命令:
if not exist $(OutDir) md $(OutDir)
mc.exe -h $(OutDir) -r $(OutDir) $(ProjectDir)..\%(Filename).mc
RC.exe -r -fo $(OutDir)%(Filename).res $(OutDir)%(Filename).rc
link.exe /MACHINE:IX86 -dll -noentry -out:$(OutDir)NTEventLogAppender.dll $(OutDir)%(Filename).res
如图:
②在log4cppRunnable项目工程中找到NTEventLogCategories.mc文件,操作方法如①。
此时再编译工程,则会出现错误2.
错误2:函数"int snprintf(char* const,const size_t,const char*const,…)"已有主体的报警。
解决方法:由于log4cpp中对snprintf进行了重新实现,visual studio的c库对snprintf也有实现,windows中在链接时会报snprintf函数冲突,所以需要设置log4cpp的预编译项,选择使用visual stuido中c库的实现,在log4cpp工程上点右键选属性,在”配置属性–>C/C+±->预处理器–>预处理器定义"中增加一条预处理定义
此时再编译log4cpp工程,则不再有报警。
3 此处选择的release版本编译,编译成功后在log4cpp和log4cppLIB两个工程编译目录release里分别产生log4cpp.dll和log4cppLIB.lib文件。
Window平台编译log4cpp使用方法记录 (一)相关推荐
- Window平台编译luaJIT
前言 luaJIT是 lua 脚本的即时编译器 ,其官网是: http://luajit.org/ 环境准备 Vistual Studio 2019 或其它版本 github 各版本下载地址: htt ...
- linux 安装 wxwidgets,Linux下的wxWidgets多平台编译环境搭建
文章作者:姜南(Slyar)文章来源:Slyar Home (www.slyar.com) 转载请注明,谢谢合作. 在Linux上利用源码包安装wxWidgets并构建多平台编译环境,简单记录一下,备 ...
- librtmp开源库与android平台编译记录
一.编写目的 为了记录编译librtmp开源库过程遇到的问题,帮助后来人提供参考,希望本文能为大家提供参考. 二.简介(官方介绍) The Real-Time Messaging Protocol ( ...
- Window平台Qt软件打包发布方法
Qt开发生成的工程,通过动态编译之后生成对应的可执行文件,如果直接执行该可执行文件则会报错: 原因是:Qt动态编译生成的可执行文件依赖非常多的dll文件,并且这些dll文件可能分布在不同文件目录,且这 ...
- 【转】Redis安装整理(window平台和Linux平台)
原文连接:http://zheng12tian.iteye.com/blog/1471726 原文作者:zheng12tian 转载注明以上信息! window平台Redis安装 redis wind ...
- checkA.php,php window平台模拟checkdnsrr函数检测_php
在php的系统函数中有一个checkdnsrr函数,该函数的作用是根据一个给定的host name(域名)或者IP地址检查它是否有DNS记录,目的就是检验它是否真实存在.但是该函数仅可以在linux系 ...
- win安装 lua php 扩展,window平台搭建Lua开发环境
这几天正在学习lua这门脚本语言,首先要解决的是开发环境的问题,因此本文记录一下在window平台下如何搭建lua的开发环境. 这里将介绍两种方式: 1.已经集成好的Lua For Windows安装 ...
- android全平台编译libjpeg-turbo并基于ANativeWindow加载JPEG图片
图形图像实践 android全平台编译libjpeg-turbo并基于ANativeWindow加载JPEG图片 android全平台编译libpng并基于ANativeWindow加载PNG图片 概 ...
- Redis安装整理(window平台和Linux平台)
window平台Redis安装 redis windows安装文件下载地址: http://code.google.com/p/servicestack/wiki/RedisWindowsDownlo ...
- Window平台下载Android源码
Android 10源码下载 想要研究Android 源码的同学可以用此方法进行下载.源码从清华大学开源软件镜像站下载. 使用Linux的同学直接参照清华镜像站提供的使用帮助即可,本文主要介绍在win ...
最新文章
- Tensorflow—变量
- 设计sample语言的词法分析器_重现木兰编程语言(十)——比较、循环,一个语法设计特色
- Linux统计某个文件夹下的文件个数、目录个数
- ubuntu再次体验之【美化】--修改主题、字体、字体大小
- PHP反序列化漏洞总结
- java 手机号码归属地_【原创】Java实现手机号码归属地查询
- .NET 的过去、现在和未来
- P2605 [ZJOI2010]基站选址
- Re-attention机制Transformer,实现强大性能
- PYTHON 100days学习笔记001:初识python
- mysql 关闭autocommit_mysql禁用autocommit,以及遇到的问题
- everything指定搜索路径
- 计算机管理能看到移动硬盘,我的移动硬盘 在我的电脑和 磁盘管理 中都看不到,只能在设备管理器的磁盘驱动器中能看到,怎么恢復啊...
- Docker:镜像加速器
- SAP S4 HANA 银行账户管理(Bank Account Management)- S4中的变化、数据维护平台介绍和配置实操等
- 大漠穷秋叫狼哥哥要学好的书
- 区块链学习2-合约开发
- 数据太多?3款免费数据分析软件,分分钟解决
- 太极英语笔记-前传语法-代词
- 【沃顿商学院学习笔记】管理学——03腐败对信任的影响Corruption and Trust