log4c 编译安装简单小结(ubuntu12)

1 下载源码,解压 (假定解压到了当前用户的根目录下,位置是~/log4c-1.2.3)

2 编译安装log4c(指定--prefix极其重要,如果没有指定到/usr下会有一堆麻烦事,还有,不能按照他的README里说的,指定到/path/of/installation,因为这样真的会在根目录下建立这样的目录)

cd ~
tar -zxvf log4c-1.2.3.tar.gz
mkdir build; cd build
../log4c-1.2.3/configure --prefix=/usr/local/log4c
make
make install

3 编译log4c自带的例子

cd ~/log4c-1.2.3/examples/helloworld
gcc -o hello helloworld.c -llog4c -I /usr/local/log4c/include -L /usr/local/log4c/lib
./hello

 

编译成功,但是执行提示找不到liblog4c.so.3 (这就是没把程序装到/usr下的孽啊)找了一下,这个文件就在/usr/local/log4c/lib下

4 配置log4c的lib所在目录

编辑/etc/ld.so.conf 发现他的内容只是要求加载 /etc/ld.so.conf.d/下的conf,进入该目录查看,发现 /etc/ld.so.conf.d/libc.conf文件,在里面追加/usr/local/log4c/和/usr/local/log4c/lib (以行分隔,共两行,其实我不确定是哪行生效了,下次可以再试下)

5 立即生效

sudo ldconfig

 6 配置文件

此时执行hello,程序无任何输出

cp ~/log4c-1.2.3/examples/log4crc ~/log4c-1.2.3/examples/helloworld/log4crc 

并且在log4crc文件里log4c节点里追加一行配置(helloworld.c源码里指定的配置)

<category name="log4c.examples.helloworld" priority="debug" appender="stdout"/>

 7 回到hello所在目录,运行

执行hello成功(该例子是在屏幕上打印一行日志)

$ ./hello 
[stdout] ERROR    log4c.examples.helloworld - Hello World!

 8 输出日志到文件

修改log4crc的文件,将添加的log4c.examples.helloworld节点appender指定为日志文件名字,例如我指定了aaa

<category name="log4c.examples.helloworld" priority="debug" appender="aaa"/>

执行hello 在hello所在目录下生成一个文件aaa,打开里面的内容是:

[aaa] ERROR    log4c.examples.helloworld - Hello World!

 

转载于:https://www.cnblogs.com/code-style/p/3223428.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值