新闻  |   论坛  |   博客  |   在线研讨会
[嵌入式开发板]迅为iTOP-6818 Qtopia2.2.0开发环境搭建以及编译镜像
顺时针01 | 2017-08-14 15:57:42    阅读:799   发布文章

本文转自:http://www.topeetboard.com

搭建 Qtopia2.2.0 开发环境,需要先搭建 Android的编译环境,然后在 Android 编译环

境的基础上,再搭建 Qtopia2.2.0 编译环境。

如果用户是使用“搭建好的 Ubuntu 镜像”,则只需要改一下环境变量,系统里面的工具

和库文件都已经安装完毕了。

针对Qt文件系统, 迅为电子在iTOP-6818开发板上移植的是Qtopia2.2.0版本和Qte4.7.1

版本,用户在参照本章节后编译后的文件图形界面是 Qtopia2.2.0 版本。Qte4.7.1 的编译方法

则在第七章。

如果用户使用的是“搭建好的 Ubuntu 镜像”,则只需要修改一下环境变量。只需要将编

译器设置为 4.4.1 编译器,修改之后的“.bashrc”环境变量文件,如下图所示。

图片1.jpg

 

 

 

 

 

1 编译器和基本库文件的安装

Qtopia2.2.0 的编译器包含在网盘目录“iTOP6818 开发板资料汇总(不含光盘内容)

\04_iTOP-6818 开发板 QtE 和 Qtopia 系统源码以及镜像\03-编译器、补丁包以及其它工具

\01-编译器”文件夹的压缩包“arm-linux-4.4.1.tar.g”中。

将压缩包拷贝到 Ubuntu 系统下的”usr/local/arm”目录下,如果没有 arm 目录可以新

建一个,如下图所示。

 

 

 

图片2.jpg 

 

 

 

接着将压缩包解压到 Ubuntu 系统的文件夹“usr”-->“local”-->“arm”下,进入

“/usr/local/arm”目录使用解压命令“tar -vxf arm-linux-4.4.1.tar.gz”解压

“arm-linux-4.4.1.tar.gz”,如下图所示。

 

 

 

图片3.jpg 

 

 

 

如下图所示,解压完成,生成了文件夹“4.4.1”文件夹。

 

 

图片4.jpg 

 

 

 

然后安装X11的SDK库, 执行命令“ apt-get install libx11-dev libxext-dev libxtst-dev” ,

如下图所示。

 

 

图片5.jpg 

 

 

安装库过程提示是否要继续,如下图所示,选择“y”,继续。

 

 

 

 

图片6.jpg 

 

 

 

 

如下图所示,更新完成。

 

 

图片7.jpg 

 

 

 

接着修改环境变量,如下图所示,在 root 目录下(使用 cd 命令之后就会回到 root 目录)

使用命令“vim .bashrc”。

 

 

图片8.jpg 

 

 

 

使用 vim 编辑器打开环境变量文件“.bashrc”后,修改 Qtopia2.2.0 编译器的路径,添加

“export PATH=$PATH:/usr/local/arm/4.4.1/bin”。在文件“.bashrc”的最后一行。然后

注释掉其它编译器,例如下图所示的 arm-2009q3 编译器。

 

 

 

图片9.jpg 

 

 

 

 

修改完成后保存退出“.bashrc”文件。

 

 

图片10.jpg 

 

 

 

更新一下环境变量,如下图所示,使用命令“source .bashrc ”更新环境变量。

 

 

图片11.jpg 

 

 

 

 

这里测试一下编译器是否正确安装,执行下命令“arm-none-linux-gnueabi-gcc -v”,

如下图所示。

 

 

 

图片12.jpg 

 

 

 

如下图所示,可以看到系统显示 arm-gcc 编译器的版本为“gcc version 4.4.1”。

 

 

 

 

图片13.jpg 

 

 

注意,在前面搭建 Android 编译环境的时候,其中提到了一步操作“降低 gcc 版本”,但

是前面“gcc”是 x86 的编译器(通过命令#gcc -v 可以查看其版本)。这里用到的“gcc”编

译器是 arm 编译器,它们是两个完全不同的编译器,大家不要弄混了。

2 Qtopia2.2.0源文件和补丁文件

在 Ubuntu 环境中,“root”目录下新建文件夹“yizhi”,具体操作如下,在 Ubuntu 命

令行中,执行命令“cd /root”和“mkdir yizhi”。

这里需要注意的是,新建的文件夹一定要在这个“root”文件夹下建立,而且一定要使用

“yizhi”这个名字。

如下图所示。

 

 

 

图片14.jpg 

 

 

 

接着找到网盘“iTOP6818 开发板资料汇总(不含光盘内容)\04_iTOP-6818 开发板 QtE

和 Qtopia 系统源码以及镜像\01-Qtopia2.2.0 源码”文件夹下的压缩包

“ARM-qtopia-free-src-2.2.0.tar.gz”。

将压缩包“ARM-qtopia-free-src-2.2.0.tar.gz”拷贝到前面新建的“yizhi”文件夹中,如

下图所示。

 

 

图片15.jpg 

 

 

 

进入“yizhi”目录,使用命令“tar -vxf ARM-qtopia-free-src-2.2.0.tar.gz”解压压缩包,

如下图所示。

 

 

 

图片16.jpg 

 

 

 

解压压缩包后得到源码文件“qtopia-free-src-2.2.0.tar.gz”和脚本文件“build”,如下

图所示。

 

 

 

图片17.jpg 

 

 

 

用户网盘“iTOP6818 开发板资料汇总(不含光盘内容)\04_iTOP-6818 开发板 QtE 和

Qtopia 系统源码以及镜像\03-编译器、补丁包以及其它工具\02-Qtopia 补丁包”文件夹下的

压缩包“tslib.tar.gz”是触摸的库文件。

将触摸的库文件拷贝到 Ubuntu,然后到 Ubuntu 系统的“usr”-->“local”文件夹下,

使用命令“tar -vxf tslib.tar.gz”解压,如下图所示。

 

 

图片18.jpg 

 

 

 

生成的文件夹“tslib”,如下图所示。

 

 

 

图片19.jpg 

 

 

 

 

3 库文件和编译Qtopia2.2.0

编译 Qtopia2.2.0 文件还需要一些额外的 6 个库文件,这 6 个库文件全部在用户网盘

“iTOP6818 开发板资料汇总(不含光盘内容)\04_iTOP-6818 开发板 QtE 和 Qtopia 系统源

码以及镜像\03-编译器、补丁包以及其它工具\02-Qtopia 补丁包”文件夹下。

这六个库文件分别是:libXext.so.6.4.0, libXmu.so.6.2.0, libSM.so.6.0.1, libICE.so.6.3.0,

libXt.so.6.0.0, libuuid.so.1.3.0

如下图所示。

 

 

图片20.jpg 

 

 

 

其中的 5 个库文件,包括“libXext.so.6.4.0“、”libXmu.so.6.2.0“、 ”libSM.so.6.0.1

“、 ”libICE.so.6.3.0“、 ”libXt.so.6.0.0”,全部拷贝到 Ubuntu 系统的文件夹“usr”

-->“lib32”下。

然后创建链接文件,具体操作如下,进入 Ubuntu 系统的文件夹“usr”-->“lib32”下,

然后在 Ubuntu 命令行中,执行下面的命令:

ln -s libXext.so.6.4.0 libXext.so.6

创建链接文件 libXext.so.6

 

ln -s libXext.so.6 libXext.so

创建链接文件 libXext.so

ln -s libXmu.so.6.2.0 libXmu.so.6

创建链接文件 libXmu.so.6

ln -s libXmu.so.6 libXmu.so

创建链接文件 libXmu.so

ln -s libSM.so.6.0.1 libSM.so.6

创建链接文件 libSM.so.6

ln -s libSM.so.6 libSM.so

创建链接文件 libSM.so

ln -s libICE.so.6.3.0 libICE.so.6

创建链接文件 libICE.so.6

ln -s libICE.so.6 libICE.so

创建链接文件 libICE.so

ln -s libXt.so.6.0.0 libXt.so.6

创建链接文件 libXt.so.6

ln -s libXt.so.6 libXt.so

创建链接文件 libXt.so

如下图所示,文件拷贝完成之后,执行创建链接的命令。

 

 

图片21.jpg 

 

 

 

拷贝剩下的文件“libuuid.so.1.3.0” 到 Ubuntu 系统的 “lib32” 文件夹下, 然后在 Ubuntu

命令行中,执行下面的命令:

ln -s libuuid.so.1.3.0 libuuid.so.1

创建链接文件 libuuid.so.1

ln -s libuuid.so.1 libuuid.so

创建链接文件 libuuid.so

如下图所示,文件拷贝完成之后,执行创建链接的命令。

 

 

 

 

 

图片22.jpg 

 

 

 

库文件全部处理完成后, 接着就可以编译 Qtopia2.2.0 源码了, 使用命令“ cd /root/yizhi”

进入 Qtopia2.2.0 源码文件夹。

 

 

4Qtopia系统源码编译

执行编译脚本命令“./build”,如下图所示。

 

 

 

图片23.jpg 

 

 

编译 qtopia2.2.0 源文件是一个比较漫长的过程。

编译完成后会在 Ubuntu 系统文件夹“root”-->“yizhi”下生成文件夹

“qtopia-free-2.2.0”,这个文件夹就是编译好的 Qtopia2.2.0 文件,如下图所示。

 

 

图片24.jpg 

 

 

 

在编译好的 Qtopia2.2.0 文件夹下,我们需要接着处理一下字库文件。具体操作如下,在

Ubuntu 命令行中,执行命令“cp -r /root/yizhi/qtopia-free-2.2.0/qt2/lib/fonts/helvetica*

/root/yizhi/qtopia-free-2.2.0/qtopia/image/opt/Qtopia/lib/fonts/”,如下图所示。

 

 

图片25.jpg 

 

 

然后把文件夹"Qtopia"拷贝到 Ubuntu 系统的 opt 文件夹下,具体操作如下,在 Ubuntu

命令行中, 执行命令“ cp -r /root/yizhi/qtopia-free-2.2.0/qtopia/image/opt/Qtopia /opt” ,

如下图所示。

 

 

 

图片26.jpg 

 

 

 

 

 

5 打包工具的安装

生成可以下载的 system.img 文件需要工具 “mkimage” , 这个工具在用户网盘 “iTOP6818

开发板资料汇总 (不含光盘内容) \04_iTOP-6818开发板QtE和Qtopia系统源码以及镜像\03-编译器、补丁包以及其它工具\03-Qt 打包工具”文件夹下的压缩包“linux_tools.tgz”中。

拷贝压缩包到 Ubuntu 系统的“/”目录下,注意目录是“/”。

 

 

图片27.jpg 

 

 

 

进入“/”目录,然后使用命令“tar -vxf linux_tools.tgz ”,将压缩包解压。

 

 

图片28.jpg 

 

 

解压后如下图所示,在“/usr/local/bin/”目录下生成了两个文件。注意:如果前面没有

安装 mkimage工具,则需要执行“apt-get install uboot-mkimage”命令安装一下。

 

 

图片29.jpg 

 

 

 

6生成文件系统

最后还需要使用解压 Android 源码得到的工具包。

如下图所示,进入前面解压的 6818Android 源码的目录“qt_system/system/opt”,如

下图所示。

 

 

图片30.jpg 

 

 

 

 

把前面编译生成的文件夹“Qtopia”拷贝到解压出来的“opt”文件夹中,具体操作如下,

在 Ubuntu 命令行中,执行命令

“cp -r /root/yizhi/qtopia-free-2.2.0/qtopia/image/opt/Qtopia

/home/6818/lollipop-5.1.1_r6/qt_system/system/opt”

注意红色的 6818/lollipop-5.1.1_r6 是作者解压 Android的文件夹,如果用户自己搭建环

境,则需要替换成自己设置的目录。

最后参考使用第五章中 Qt 编译部分,执行编译脚本“build_android.sh qt”,如下图所

示。

 

 

图片31.jpg 

 

 

 

注意:Android 源码中只有 Qtopia2.2.0 生成好的文件系统,本章是从最初的源码编译的

到 Qtopia 文件系统。 在第五章 qt 编译部分只是给文件系统打包, 并没有编译 Qtopia 的源码。


*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。

参与讨论
登录后参与讨论
推荐文章
最近访客