log4cplus在ARM上的运行

使用log4cplus记录日志的项目,想要在arm上运行,需要使用交叉编译工具进行编译后放到arm环境中,从环境搭建到在arm上运行步骤如下:

一、宿主机环境搭建

1、环境: Ubuntu 18.04.2

2、下载 logcplus后解压,本文使用的版本:log4cplus-2.0.7.tar.gz

tar zcvf log4cplus-2.0.7.tar.gz

3、 进入解压后的文件夹里 cd  log4cplus-2.0.7

4、安装,依次执行下面命令

./configure --prefix=/opt/log4c --host=arm-linux-gnueabi CC=/opt/gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabi/bin/arm-linux-gnueabi-gcc CXX=/opt/gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabi/bin/arm-linux-gnueabi-g++ --without-expat CFLAGS=-I/opt/log4c/include LDFLAGS=-L/opt/log4c/lib --enable-static --build=x86_64-linux-gnu

sudo make install

--prefix指明需要安装 否则将缺省安装到/usr/local目录下

 --host 目标环境 是 arm-linx  设置指定软件运行的系统平台的交叉环境,

 --host=arm-linux-gnueabi :编译出来的二进制程序所执行的主机

--build=x86_64-linux-gnu  :执行代码编译的主机

 --without-expat 不依赖expat解析器

--enable-static 指明了要生成静态库,可以不包含,这样就不会生成 .a 文件

-enable-threads 如果需要单线程版本可通过-enable-threads=no参数指定, 否则默认将安装多线程版本。

5、安装成功后,在/opt/log4c 目录下的有    lib(库文件)     include (头文件)   

二、编译LogTest.cpp:

1、宿主机设置自己的交叉编译工具  source  /opt/gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabi/environment-setup-arm-linux-gnueabihf 

2、写好的项目进行编译, 把 LogTest.cpp 拷贝到自己的目录 如log4目录,编译 LogTest.cpp

编译命令:

arm-linux-gnueabi-g++ -Wall -g -std=c++11  -I/opt/log4c/include -c LogTest.cpp -o LogTest.o


arm-linux-gnueabi-g++ LogTest.o -o logtest -Wall -llog4cplus  -lpthread  -L/opt/log4c/lib  

三、arm运行:

1、编译好的logtest拷贝到arm环境中的文件夹里 如/opt/LOG_BIN 

2、库文件liblog4cplus.so(软链接)   、liblog4cplus-2.0.so.3(软链接)    liblog4cplus-2.0.so.3.4.6(本体)拷贝到arm环境中的文件夹里,如/opt/LOG_BIN/lib

3、设置环境变量 export LD_LIBRARY_PATH=/opt/LOG_BIN/lib  不设置运行时会找不到动态链接库的路径

4、运行程序 ./logtest

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值