×
单片机 > 单片机程序设计 > 详情

LOG4C移植到ARM平台流程

发布时间:2020-06-20 发布时间:
|
一、           LOG4C简介

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

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平台 

『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
STM32 ISL1208编程