移植QT到arm平台
下载Qt源码http://download.qt.io/archive/qt/https://www.qt.io/源码包(300-500M)--编译成库文件(后期编译成员时候直接链接库文件,运行程序的时候也链接库文件) ---pc版库文件, arm版库文件(交叉编译Qt源码)1.准备工作a) 1.交叉编译好的Qt库(放在linux虚拟机上的armqt5.5-gec.
·
源码包(300-500M)--编译成库文件(后期编译成员时候直接链接库文件,运行程序的时候也链接库文件) ---pc版库文件, arm版库文件(交叉编译Qt源码)
1.
准备工作
a)
1.
交叉编译好的
Qt
库(放在
linux
虚拟机上的
armqt5.5-gec.all.fonts.tar.bz2
)
b)
2.
裁剪编译好的
Qt
库(放在开发板
armqt5.5.tar.bz2
)
c)
3.
运行使用的依赖库(字体,触摸,总线库
dbus
)(
armlib-all.tar.bz2
)
d)
4.
开发板上使用的配置文件(
profile
)
e)
5.
字库文件(
fonts.tar.bz2
)
f)
6.
交叉编译工具(
arm-linux-gnueabi-4.5.1.tar.bz2
)
2.
搭建
pc
交叉
Qt
程序环境(
linux
虚拟机
)
1.
安装交叉编译工具(就把
arm-linux-gnueabi-4.5.1.tar.bz2
解压
/opt
目录,配置环境变量)
a)
/opt# tar -jxf arm-linux-gnueabi-4.5.1.tar.bz2
b)
/opt# mv usr/local/arm/4.5.1/ ./
c)
把
export PATH=/opt/4.5.1/bin:$PATH
语句添加到
/etc/bash.bashrc
文件最后面重新打开终端
2.
安装交叉编译好的
Qt
库(就把
armqt5.5-gec.all.fonts.tar.bz2
解压在
/opt
目录
必须
)
3.
交叉编译
Qt
程序
a)
进入已经写好的
Qt
项目代码目录
i.
loginwin.cpp LoginWin.pro loginwin.ui
ii.
loginwin.h LoginWin.pro.user main.cpp
iii.
gec@ubuntu:/mnt/hgfs/Qt/002/code/LoginWin$
b)
在执行
/opt/armqt5.5-gec/bin/qmake --
会生成交叉编译的
Makefile
文件(
为了后期方便可以制作一个别名
alias armqmake='/opt/armqt5.5-gec/bin/qmake'
放在
/etc/bash.bashrc
文件最后面,后面使用就直接用
armqmake
)
c)
执行
make ---
会生成
arm
版的
Qt
程序 (把
Qt
程序下载到开发板)
3.
搭建
arm
开发板运行环境(
下面所有操作是在开发板上
)
a)
1.
开发板
Qt
环境删除 进入
/opt/
目录下 删除所有文件
b)
2.
把裁剪编译好的
Qt
库下载到开发板并且解压到
/opt
目录下 (
tftp
下载)解压后修改名字
mv armqt5.5 armqt5.5-gec
c)
3.
下载依赖库
armlib-all.tar.bz2
放在
/home/tiydy
目录下(如果没有
tiydy
目录就创建一个)
d)
4.
下载
profile
文件到
/etc/
目录下
e)
5.
下载字库文件
fonts.tar.bz2
到
/
usr/share
目录下并且解压
在运行
qt
程序
在开发板运行程序出现下面错误
from:tiydy-2015-10-16
process 146: D-Bus library appears to be incorrectly set up;
failed to read machine uuid: Failed to open "/etc/machine-id": No such file or directory
See the manual page for dbus-uuidgen to correct this issue.
D-Bus not built with -rdynamic so unable to print a backtrace
Aborted
添加
dbus
库
---
库在
armlib.tar.bz2
下面的
lib
里面
解压后,把
lib
中的库拷贝到开发板
lib
下
把
bin
下的文件拷贝到开发板
bin
目录
在开发板运行
dbus-uuidgen > /etc/machine-id (
重定向创建文件
)
更多推荐
已为社区贡献3条内容
所有评论(0)