1)构建开发平台,主要为以下几步:
-
建立平台开发文件夹:目前为/friendly-arm
-
建立JFlash烧写程序;JFalsh.tgz
-
安装NFS系统挂载的要目录:root-for-nfs-v6.tgz
-
安装arm-linux工具链(一般为usr/local/arm下),可从网上下。本项目为2.95.3及3.0
-
安装QT库,将QT库安装在/usr/local/qt下
-
安装QTE库,/qtresouse中。最好分两者进行编译:arm-qte; x86-qte(本项目应该用2.95.3的工具链进行编译)。相应的环境设置如下:
#!/bin/bash
export QTDIR=/friendly-arm/qtsource/arm-qte-3.3.4
export PATH=$QTDIR/bin:$PATH
export PATH=/usr/local/arm/2.95.3/bin:$PATH
export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH
echo yes | ./configure -embedded arm -xplatform qws/linux-arm-g++ -platform qws/linux-x86-g++ -qvfb -depths 16 -shared -DQT_QLOCALE_USES_FCVT
-
设定网络系统共享目录(NFS):主要是安装NFS,并编辑/etc/exports文档
语法:# [分享目錄] [第一部主機(權限)] [可用主機名] [可用萬用字元] 目前为:/friendly-arm/root *(rw, sync, no-root-squash) 可以用/usr/sbin/showmount查看所共享目录,用/sbin/service nfs start开启nfs服务
-
烧写vivi(为光盘所带)
-
修改vivi下载等待时间参数:用param show显示参数,用param set设置参数。
-
下载linux内核,具有nfs模块。
-
用nfs加载后,直接将已压缩好的文件系统解压到目标机(先进行格式化)。运行bk6448及bs6448命令即可。
目前已基本建好开发环境。
(2)建立项目文件夹,并制作makefile;
制作方法如下:
-
先设置环境set-env
-
qmake -project:生成.pro的项目文件
-
qmake :生成Makefile
-
修改Makefile,将其中的编译器及链接器修改成arm-linux-gcc和arm-linux-g++,并适当增加-g开关(打开调试信息),最好另存为Makefile_arm,以免在修改QT库或make clean时,将编译器给改回来。
往下就可以编译软件了。
(3)调试项目;
-
先以宿主机QT库为库来源,进行编译项目(此时不用修改编译器和链接器)。直到项目基本调试完毕。
-
再以宿主机QTE库为库来源,进行编译项目
-
再以目标机QTE库为库来源,进行编译项目,此时,应该将NFS系统设置好,并设置为vivi的启动参数。
-
制作目标机gdbserver及arm-linux-gdb,用于调试。可编写脚本简化目标机调试服务器启动过程。