日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

log4cxx编译过程–linux

發布時間:2024/4/17 linux 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 log4cxx编译过程–linux 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

前面有一篇Windows下的log4cxx編譯, 這里記錄下在linux上的編譯過程.

環境:CentOS6.3 gcc-4.4.6

-> view os version: lsb_release -a
?????? lsb_release prints certain LSB (Linux Standard Base) and Distribution

information

#lsb_release -a
LSB Version:??? :core-4.0-ia32:core-4.0-noarch:graphics-4.0-ia32:graphics-

4.0-noarch:printing-4.0-ia32:printing-4.0-noarch
Distributor ID: CentOS
Description:??? CentOS release 6.3 (Final)
Release:??????? 6.3
Codename:?????? Final

-> view kerenl and gcc version: -cat /proc/version

# cat /proc/version
Linux version 2.6.32-279.el6.i686 (mockbuild@c6b9.bsys.dev.centos.org) (gcc

version 4.4.6 20120305 (Red Hat 4.4.6-4) (GCC) ) #1 SMP Fri Jun 22 10:59:55

UTC 2012

log4cxx版本:
apache-log4cxx-0.10.0
log4cxx是在apache portable runtime library: apr-1.4.6? apr-util-1.5.2

第一步: 編譯apr
tar -xcf apr-1.4.6.tar.gz -C /usr/local/apr/
cd /usr/local/apr/apr-1.4.6
./configure --prefix=/usr/local/apr
make
make install
///
./configure --help 可以看幫助. --prefix=/usr/local/apr是配置安裝目錄, apr最終安

裝在/usr/local/apr下.
make - 編譯apr
make install - 安裝, 就是將include, lib, bin文件拷貝到/usr/local/apr下, 并建立相

應的目錄結構.

第二步: 編譯apr-util
apr-util需要以來apr, 所以需先編譯apr
tar -xcf apr-util-1.5.2.tar.gz -C /usr/local/apr-util/
cd /usr/local/apr-util/apr-util-1.5.2
./configure --prefix=/usr/local/apr-util/ --with-apr=/usr/local/apr/
make
make install

--with-apr - 此option指明apr的路徑

第三步: 編譯log4cxx
解壓->到解壓后的目錄
./configure --prefix=/usr/local/log4cxx/ --with-apr=/usr/local/apr/ --with-

apr-util=/usr/local/apr-util/
make

make過程中, 會遇到錯誤發生
第一個錯誤:
inputstreamreader.cpp:66: error: 'memmove' was not declared in this scope
memmove沒有申明, 查linux編程文檔, memmove在string.h中申明.

./src/main/cpp/inputstreamreader.cpp -> 增加 #include <string.h>

./src/main/cpp/socketoutputstream.cpp -> 增加 #include <string.h>

./src/examples/cpp/console.cpp -> 增加 #include <stdio.h> #include <string.h>

///
make
make install

最后配置/etc/ld.so.conf - 需要root權限
增加:
/usr/local/apr/lib
/usr/local/apr-util/lib
/usr/local/log4cxx/lib

若沒有root權限, 只有通過LD_LIBRARY_PATH來配置lib path
vi $HOME/.bash_profile
增加
export LD_LIBRARY_PATH=/usr/local/apr/lib:/usr/local/apr-util/lib:/usr/local/log4cxx/lib:.:$LD_LIBRARY_PATH
source .bash_profile -->生效
echo $LD_LIBRARY_PATH可以查看.

---> OK.

如何使用, 我沒用, 聽說log4cxx有內存泄露, 我用了自己寫的log代碼, 網上有很多簡單的用法介紹. 因為別人編寫的模塊中使用了這個庫, 所以這里環境必須配齊.

轉載于:https://www.cnblogs.com/crunchyou/archive/2013/04/27/3046504.html

總結

以上是生活随笔為你收集整理的log4cxx编译过程–linux的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。