最近在做Windows CE、Android下的c/c++开发,这类程序调试都比较慢。尤其是Anroid环境,缺乏有效的调试手段,大部分情况下都只能依靠输出log文件,这种情况下,急需一个比较好的日志库。说到日志库,首先想到的自然是java的log4j,找了一下,log4j有c/c++的移植版,其中有使用c++的log4cxx,还有纯c的log4c。由于现在主要做嵌入式开发,而有的平台对c++支持并不好,比如android目前就不支持stl,为了保险起见,还是使用纯c的log4c。
来到log4c的主页看了一下,最新版本是1.2.1,已经好久没更新了,不过这也说明代码比较稳定。赶紧下载下来,看来看说明,怎么配置写得很清楚,在ubuntu 8.10下make一次就过了,看来移植性做得不错。但是包里没提供visual studio工程,在windows和windows ce下还着实费了一番功夫,后来仔细看了下代码,有几个文件还没有移植到windows,只能把这几个文件先排除出工程,编译几个基本的文件过来再说。在windows ce还有其他的问题。
sourceforge上的这个log4c项目很不活跃,但我觉得有个好的类似log4j的日志库对嵌入式开发很有帮助,所以我在googlecode上申请了一个新项目log4c-embed,地址是
http://code.google.com/p/log4c-embed/,我会把在实际工作中碰到的问题做修改,如果代码有更改我会及时上传,原始代码基于log4c-1.2.1。