-
前言
本文所用ARM开发板为周立功m6708Q(imx6q系列),交叉工具链为官方提供:poky-glibc-x86_64-meta-toolchain-cortexa9hf-vfp-neon-toolchain-1.7.
-
下载
1. 进入项目主页
log4cplus / Wiki / Homehttps://sourceforge.net/p/log4cplus/wiki/Home/2. 点击“SourceForge”
3. 点击“Download Latest Version”下载(或者点击“log4cplus-stable”可下载其它历史版本)
-
安装
1. 解压后得到“log4cplus-2.0.6”文件夹,进入文件夹;
2. 打开终端,使用以下命令修改环境变量:
source /opt/poky/1.7/environment-setup-cortexa9hf-vfp-neon-poky-linux-gnueabi
3. 依次执行:
./configure --prefix=$PWD/tmp
make
make install
其中,--prefix=$PWD/tmp 指定安装位置为当前文件夹下的tmp文件夹(会新建),也可以自己指定安装位置,不建议默认。(不要问为什么,反正就是能少点儿事就对了~)。
ps:1. 默认安装路径是/usr/local/,若安装至默认路径,则最后一步make install很可能会因为用户环境变量改变以及权限问题而报错(之前安装libevent库时就出现过该问题);2. 这个是arm用的库,ubuntu用不了,放在ubuntu系统文件夹下显混乱;3. 安装至当前文件夹下,方便在不同电脑间直接拷贝。综上,不建议使用默认安装。
4. 安装成功后,在当前文件夹下生成一个tmp文件夹,里面有两个文件夹:include 和 lib
5. 将lib下的所有文件拷贝到工具链的以下位置:
/opt/poky/1.7/sysroots/cortexa9hf-vfp-neon-poky-linux-gnueabi/usr/lib
同时拷贝到开发板的/usr/lib文件夹下,这是程序运行所依赖的库。其中的dpkconfig文件夹可以不拷贝。
注:拷贝当前目录下的库文件时,使用 '-a' 选项,可保留软链接的指向:
cp -a log4cplus* 目标路径
然后将include下的所有文件拷贝到工具链的以下位置:
/opt/poky/1.7/sysroots/cortexa9hf-vfp-neon-poky-linux-gnueabi/usr/include
-
在QtCreator中使用
在qtcreator工程中选择添加系统库,选择上述工具链的lib文件夹位置,选中刚才拷贝进去的库文件,一共2个,添加两次。
添加成功后在当前工程的.pro文件下会多出两行:
或者直接打开.pro文件,在后面添加:LIBS += -llog4cplus,LIBS += -llog4cplusU,这样操作和上面添加系统库的操作本质上是一样的。
PS:在安装的第5步中,不拷贝到工具链的文件夹下也行,此时向qtcreator添加库文件的时候,选择添加外部库,而不是系统库,添加库时指定lib和include的路径为tmp文件夹的路径即可。但是,不建议这样操作,尽可能将所有与编译相关的库集中放在工具链路径下,这样,移动交叉工具链的时候可以保证库文件的路径不发生变化,避免换到另一台电脑上就报未定义等与找不到库文件相关的错误。
完!