C++BUILDER6下编译log4cpp-0.2.8手记
log4cpp是一个非常不错的开源项目,但是现有的Release版本中安装程序都存在有问题,导致在编译时不能顺利完成。在C++BUILDER6中编译最新版的log4cpp-0.3.5rc2时存在的问题非常严重,很多文件都缺少头文件,在经过大量的对源代码的修改后仍然无法顺利编译。因此,选择了低版本的log4cpp-0.2.8来进行编译,解决了编译过程中存在的种种问题后,终于搞定了。以下是编译步骤:
1,解压到任意一个目录,这里假定为c://log4cpp-0.2.8
2,启动C++BUILDER6打开工程文件c://log4cpp-0.2.8//bcb5//log4cpp//log4cpp.bpr,然后工程文件从 bcb5.0自动转换到bcb6.0。不要试图打开项目组bpg文件,那个文件有问题。
3,打开Priority.cpp在namespace外面添加包含头文件#include <stdlib.h>
OK,下面就可以编译了,编译成功后有两个Warning,不用管它,可以直接使用了。
上面是根据log4cpp自带的BCB工程文件进行编译的,最终生成的文件是一个DLL文件,这就意味着在你使用log4cpp的时候,必须要带上这个DLL文件,有时候就感觉很烦。下面,我们将对log4cpp做个小手术,使之编译出lib文件,这样,使用log4cpp的程序就可以使用静态链接的方式了。
1,在c://log4cpp-0.2.8//bcb5目录下创建一个目录log4cpplib
2,启动C++BUILDER,创建一个新的Library工程,名子为log4cpplib,保存在刚刚创建的目录中。
3,将C:/log4cpp-0.2.8/src下的所有CPP文件添加到此工程中。
4,在工程属性中添加文件包含路径:c://log4cpp-0.2.8//include
5,在Project->Options->TLib面板上将Page size由0x0010改为0x0100
OK,准备工作做好了,编译通过,到log4cpplib目录下面看看,是不是多了一个大小为3M的lib文件:),由了它,你就可以静态链接了。