1. log4cpp1.0仅提供了vc6的工程文件,使用vs2008(VS2005)打开工程并进行转换
2. 直接编译log4cppDLL, 提示Custom Build Step时出现错误:
因为log4cpp在生成NTEventLogAppender.dll时,需要连接NTEventLogCategories.mc文件。 所以,项目设置了自定义的生成步骤去生成NTEventLogAppender.dll。但从vc6的工程文件转换时,这些步骤却没有正确的转换过来。
3. 重新填写Custom Build Step项:(右键->工程属性->选择自定义生成步骤)
if not exist $(OutDir) md $(OutDir)
"mc.exe" -h $(OutDir) -r $(OutDir) $(SolutionDir)NTEventLogCategories.mc
"RC.exe" -r -fo $(OutDir)\$(InputName).res $(ProjectDir)\$(InputName).rc
"link.exe" /MACHINE:IX86 -dll -noentry -out:$(OutDir)\NTEventLogAppender.dll $(OutDir)\$(InputName).res
4. 在(右键->工程属性->选择自定义生成步骤)Outputs填写:$(OutDir)\NTEventLogAppender.dll
5. 继续编译, 再次报错, 连接失败, 找不到符号
因为工程没有包含源文件: FactoryParams.cpp & Localtime.cpp
6. 手动添加上述两个文件到工程, 重新编译通过, 并生成log4cpp.dll