新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > LOG4C移植到ARM平臺流程

        LOG4C移植到ARM平臺流程

        作者: 時間:2016-11-09 來源:網絡 收藏
        一、LOG4C簡介

        現在流行的Log工具大體有:Log4c,Log4CPP, Log4CXX等。

        本文引用地址:http://www.104case.com/article/201611/317665.htm

        Log4cxx需要依賴于APR。Log4cpp支持C++語言。由于項目主要是用C來編寫,故而選用Log4c。

        Log4c基本上都是一些純c的東西,在平臺移植方面,比前二者有優勢。

        二、開發環境

        操作系統:Ubuntu 10.4(linux kernel-v2.6.31)

        移植Linux內核版本:2.6.30

        交叉編譯工具:arm-linux-gcc 4.3.2

        三、下載LOG4C及EXPAT工具源代碼

        LOG4C源代碼的下載地址:

        http://nchc.dl.sourceforge.net/project/log4c/log4c/1.2.1/log4c-1.2.1.tar.gz

        EXPAT工具源代碼的下載地址:

        http://nchc.dl.sourceforge.net/project/expat/expat/2.0.1/expat-2.0.1.tar.gz

        四、用arm-linux-gcc編譯EXPAT

        建兩個目錄:tools_source tool_build。其中LOG4C及EXPAT的壓縮包都放在tools_source目錄中。進入tools_build目錄。在提示符下輸入以下命令:

        > mkdir expat_build

        > tar –zxvf ../tools_source/expat-2.0.1.tar.gz

        > cd expat_build

        > ../expat-2.0.1/configure --prefix=/opt/tools/tools_build/expat_build/ --libdir=/opt/tools/tools_build/expat_build/ --enable-shared --host=arm-linux CC=/usr/local/arm/4.3.2/bin/arm-linux-gcc

        > make install

        在/opt/tools/tools_build/expat_build/下便會看到你所需要的.so庫了,如圖1所示:

        圖1

        將expat_build/include目錄下所有的.h文件拷貝到/usr/local/arm/4.3.2/arm-none-linux-gnueabi/libc/usr/include/目錄中。

        將expat_build/目錄下所有的.so文件拷貝到/usr/local/arm/4.3.2/arm-none-linux-gnueabi/libc/lib目錄中。

        五、用arm-linux-gcc編譯LOG4C

        進入tools_build目錄。在提示符下輸入以下命令:

        > mkdir log4c_build

        > tar –zxvf ../tools_sournce/log4c-1.2.1.tar.gz

        > cd log4c_build

        > ../log4c-1.2.1/configure --prefix=/opt/tools/tools_build/log4c_build/ --libdir=/opt/tools/tools_build/log4c_build/ --enable-shared --with-gnu-ld --host=arm-linux CC=arm-linux-gcc CPPFLAGS=-I/usr/local/arm/4.3.2/arm-none-linux-gnueabi/libc/usr/include/ LDFLAGS=-L/usr/local/arm/4.3.2/arm-none-linux-gnueabi/libc/lib

        > make install

        如果提示圖2所示的錯誤:

        圖2

        修改log4c_build/log4c-1.2.1/src/config.h.in文件:

        將201行的#undef malloc注釋掉。

        將204行的#undef realloc注釋掉。

        然后將tools_build/build目錄下文件全部刪除,重新執行以下命令:

        > ../log4c-1.2.1/configure --prefix=/opt/tools/tools_build/log4c_build/ --libdir=/opt/tools/tools_build/log4c_build/ --enable-shared --with-gnu-ld --host=arm-linux CC=arm-linux-gcc CPPFLAGS=-I/usr/local/arm/4.3.2/arm-none-linux-gnueabi/libc/usr/include/ LDFLAGS=-L/usr/local/arm/4.3.2/arm-none-linux-gnueabi/libc/lib

        > make install

        在build目錄下,你將看LOG4C的.so庫文件已經生成了,如圖3所示:

        圖3



        關鍵詞: LOG4C移植ARM平

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 翁牛特旗| 阳东县| 佛山市| 沛县| 祥云县| 天门市| 类乌齐县| 司法| 启东市| 荥阳市| 恩施市| 黄陵县| 宜兰市| 阳城县| 平陆县| 青冈县| 鄂托克前旗| 滦平县| 额敏县| 苍南县| 灵石县| 富顺县| 辽宁省| 库伦旗| 贺州市| 四平市| 长沙县| 新乐市| 淮滨县| 德惠市| 株洲县| 加查县| 遵化市| 新巴尔虎左旗| 台南市| 博湖县| 保亭| 澳门| 隆尧县| 文登市| 亳州市|