本文作者:qiaoqingyi

编程环境搭建(编程环境配置)

qiaoqingyi 04-23 112

  [嵌入式开发板]迅为iTOP-6818 Qtopia2.2.0开发环境搭建以及编译镜像

  迅为开发板

  本文转自:https://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 编译器和基本库文件的安装

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

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

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

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

  建一个,如下图所示。

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

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

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

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

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

  如下图所示。

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

  如下图所示,更新完成。

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

  使用命令“vim .bashrc”。

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

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

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

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

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

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

  如下图所示。

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

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

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

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

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

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

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

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

  “yizhi”这个名字。

  如下图所示。

  接着找到网盘“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”文件夹中,如

  下图所示。

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

  如下图所示。

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

  图所示。

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

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

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

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

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

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

  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

  如下图所示。

  其中的 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

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

  拷贝剩下的文件“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

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

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

  进入 Qtopia2.2.0 源码文件夹。

  4Qtopia系统源码编译

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

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

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

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

  在编译好的 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/”,如下图所示。

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

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

  如下图所示。

  5 打包工具的安装

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

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

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

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

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

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

  6生成文件系统

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

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

  下图所示。

  把前面编译生成的文件夹“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”,如下图所

  示。

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

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

阅读
分享