logo
0
0
Login

Log4cxx 0.9.7 完整编译指南

项目概述

Log4cxx 0.9.7 是一个基于C++98标准的日志库,移植自Apache log4j项目。本指南详细说明在Debian 12系统上编译静态库和动态库的完整流程。

系统要求

  • 操作系统:Debian 12 (Bookworm) 或兼容的Linux发行版
  • 编译器:GCC/G++ (支持C++98标准)
  • 构建工具:autoconf, automake, libtool, pkg-config

依赖安装

基础构建工具

apt-get update apt-get install -y build-essential autoconf automake libtool pkg-config

编译依赖库

apt-get install -y libcppunit-dev libboost-regex-dev libxml2-dev libapr1-dev libaprutil1-dev

完整编译流程

1. 生成配置脚本

./autogen.sh

2. 配置项目(支持静态库和动态库)

./configure --enable-static --enable-shared --with-XML=libxml2 --with-pic

3. 编译项目

make

4. 安装库文件

make install

验证安装

检查安装的库文件

ls -la /usr/local/lib/ | grep log4cxx

检查安装的头文件

ls -la /usr/local/include/ | grep log4cxx

生成的静态库

库文件位置

/workspace/log4cxx-0.9.7/src/.libs/liblog4cxx.a

库文件信息

  • 文件大小: 28.5 MB
  • 文件类型: 静态库 (ar archive)
  • 编译标准: C++98

使用说明

编译选项

g++ -o your_program your_program.cpp /path/to/liblog4cxx.a -lxml2 -lpthread

必需链接库

  • -lxml2: XML配置支持
  • -lpthread: 线程安全支持

功能特性

支持的Appenders

  • ConsoleAppender, FileAppender, RollingFileAppender
  • DailyRollingFileAppender, SocketAppender, SMTPAppender
  • SyslogAppender, NTEventLogAppender, ODBCAppender

支持的Layouts

  • SimpleLayout, PatternLayout, HTMLLayout
  • TTCCLayout, XMLLayout

配置方式

  • BasicConfigurator, DOMConfigurator, PropertyConfigurator

平台兼容性

已验证平台

  • Debian 12 (x86_64)
  • 其他Linux发行版应可兼容

编译器要求

  • GCC 3.4.x + (支持C++98标准)
  • 禁用C++11及以后特性

维护说明

清理编译缓存

make clean find . -name "*.o" -o -name "*.lo" -o -name "*.la" -o -name ".deps" -type d | xargs rm -rf

重新编译

cd src && make liblog4cxx.la

许可证

本项目基于Apache License 2.0许可证发布。


最后更新: 2025-11-16

About

log4cxx-0.9.7 自用修改版

Language
Makefile58.1%
C++40.3%
C0.4%
Shell0.4%
Others0.8%