0、下载
http://logging.apache.org/log4cxx/
1、先下载如下源代码包
apr-1.3.3.tar.bz2
apr-util-1.3.4.tar.bz2
apache-log4cxx-0.10.0.tar.gz
2、将上述包上传到同一个目录下
3、安装apr
安装步骤:
tar xjf apr-1.3.3.tar.bz2
cd apr-1.3.3
./configure --prefix=/usr/local/apr
make
make install
4、安装apr-util
安装步骤:
tar xjf apr-util-1.3.4.tar.bz2
cd apr-util-1.3.4
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
make
make install
4、安装log4cxx
安装步骤:
tar xzf apache-log4cxx-0.10.0.tar.gz
cd apache-log4cxx-0.10.0
./configure --prefix=/usr/local/log4cxx --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util
make
make install
因为编译成的是共享库,最后还要设置下搜索目录,编辑~/.bashrc,添加下面两行
LD_LIBRARY_PATH=/usr/local/lib
export LD_LIBRARY_PATH
OK,至此log4cxx就安装完毕了。
最后写个程序,测试下。
#include <log4cxx/logger.h>
#include <log4cxx/logstring.h>
#include <log4cxx/propertyconfigurator.h>
int main(int argc, char* argv[])
{
using namespace log4cxx;
// 读取配置文件
PropertyConfigurator::configure("log4cxx.cfg");
// 建立两个logger
LoggerPtr logger1 = Logger::getLogger("TraceYourMama");
LoggerPtr logger2 = Logger::getLogger("Patch");
LOG4CXX_TRACE(logger1, "跟踪");
LOG4CXX_WARN(logger1, "警告");
LOG4CXX_DEBUG(logger1, "调试");
LOG4CXX_ASSERT(logger1, false, "断言");
LOG4CXX_FATAL(logger1, "致命");
LOG4CXX_TRACE(logger2, "跟踪");
LOG4CXX_ERROR(logger2, "错误");
return 0;
}
编译链接
$g++ -o main main.cpp -llog4cxx
OK,打完手工。
5、打包二进制包
切换到/usr/local目录下,包文件名格式为:
apache-log4cxx-0.10.0-Linux发行版本-内核版本-libc版本-线程库版本.tar.gz
如:
apache-log4cxx-0.10.0-SuSE10-2.6.16-libc24-NPTL24.tar.gz
将/usr/local目录下的apr-1.3.3、apr-util-1.3.4和apache-log4cxx-0.10.0三个子目录打到包中,如:
tar czf apache-log4cxx-0.10.0-SuSE10-2.6.16-libc24-NPTL24.tar.gz apr-1.3.3 apr-util-1.3.4 apache-log4cxx-0.10.0