跳转至: 导航, 搜索

“Test”的版本间的差异

第1行: 第1行:
[http://bbs.idcspy.com 美国主机侦探]
+
# <center>'''编译Linux+QT'''</center>
 +
## '''安装依赖包'''
 +
 
 +
使用如下命令安装所需的软件包:
 +
 
 +
sudo apt-get update
 +
 
 +
sudo apt-get install git-core gnupg flex bison gperf libsdl1.2-dev libwxgtk3.0-dev build-essential zip curl zlib1g-dev gcc-multilib g++-multilib genromfs libc6-dev-i386 libncurses5-dev x11proto-core-dev libx11-dev ccache libgl1-mesa-dev libxml2-utils xsltproc unzip gperf lsb-core lib32z1-dev lib32ncurses5-dev lzop
 +
 
 +
:# '''编译uboot'''
 +
 
 +
说明:QT系统使用的uboot与内核与安卓完全相同,如果编译过android的uboot和内核,则本小节步骤可以省略。
 +
 
 +
在android源码目录下执行如下命令编译uboot,编译完成后映像文件<nowiki>RK3399MiniLoaderAll_V1.05.bi</nowiki>n(因版本不同,名称不一定相同)以及<nowiki>uboot.im</nowiki>g会释放到out/release目录。
 +
 
 +
.<nowiki>/mk.sh</nowiki>    -u
 +
 
 +
:# '''编译android内核'''
 +
 
 +
说明:QT系统使用的uboot与内核与安卓完全相同,如果编译过android的uboot和内核,则本小节步骤可以省略。
 +
 
 +
在android源码目录下执行如下命令编译linux内核,编译完成后映像文件<nowiki>kernel.im</nowiki>g、<nowiki>resource.im</nowiki>g会释放到out/release目录。
 +
 
 +
.<nowiki>/mk.sh</nowiki>    -k
 +
 
 +
:# '''编译文件系统'''
 +
 
 +
在android源码目录下执行如下命令编译linux映像文件,编译完成后linux映像文件<nowiki>linux-rootfs.im</nowiki>g会释放到out/release目录。
 +
 
 +
.<nowiki>/mk.sh</nowiki>    -b
 +
 
 +
在执行./<nowiki>mk.sh</nowiki> -b编译buildroot时,默认编译会少一些插件或库,会弹出一些错误信息。
 +
 
 +
[[image:Picture 1|553x52px]]
 +
 
 +
    该提示信息表明编译需要git包,执行如下指令安装:
 +
 
 +
sudo  apt-get  install  git
 +
 
 +
[[image:Picture 2|553x139px]]
 +
 
 +
    该提示表明标准的C++库没有安装,执行如下指令安装:
 +
 
 +
sudo apt-get install lib32stdc++-4.9-dev
 +
 
 +
[[image:Picture 3|553x105px]]
 +
 
 +
    该提示表明缺少libz库,执行如下指令安装:
 +
 
 +
sudo apt-get install lib32z1
 +
 
 +
    再执行.<nowiki>/mk.sh</nowiki> -b指令即可正常编译了。编译完成后,最终打包好的文件系统<nowiki>linux-rootfs.im</nowiki>g存放在out/release目录下。它包含了QT5.6的标准库,以及一些常用的QT示例。
 +
 
 +
:# '''生成<nowiki>update-linux.im</nowiki>g文件系统'''
 +
 
 +
  在android源码目录下执行如下命令生成单一android映像文件<nowiki>update-linux.im</nowiki>g:
 +
 
 +
.<nowiki>/mk.sh</nowiki>    -U
 +
 
 +
    update-<nowiki>linux.im</nowiki>g为整个QT系统升级文件的单一映像,包括了uboot,内核,文件系统等。注意,生成update-<nowiki>linux.im</nowiki>g的先决条件是已经成功编译了uboot,内核和linux文件系统,缺一不可。

2017年3月2日 (四) 11:25的版本

  1. 编译Linux+QT
    1. 安装依赖包

使用如下命令安装所需的软件包:

sudo apt-get update

sudo apt-get install git-core gnupg flex bison gperf libsdl1.2-dev libwxgtk3.0-dev build-essential zip curl zlib1g-dev gcc-multilib g++-multilib genromfs libc6-dev-i386 libncurses5-dev x11proto-core-dev libx11-dev ccache libgl1-mesa-dev libxml2-utils xsltproc unzip gperf lsb-core lib32z1-dev lib32ncurses5-dev lzop

  1. 编译uboot

说明:QT系统使用的uboot与内核与安卓完全相同,如果编译过android的uboot和内核,则本小节步骤可以省略。

在android源码目录下执行如下命令编译uboot,编译完成后映像文件RK3399MiniLoaderAll_V1.05.bin(因版本不同,名称不一定相同)以及uboot.img会释放到out/release目录。

./mk.sh -u

  1. 编译android内核

说明:QT系统使用的uboot与内核与安卓完全相同,如果编译过android的uboot和内核,则本小节步骤可以省略。

在android源码目录下执行如下命令编译linux内核,编译完成后映像文件kernel.img、resource.img会释放到out/release目录。

./mk.sh -k

  1. 编译文件系统

在android源码目录下执行如下命令编译linux映像文件,编译完成后linux映像文件linux-rootfs.img会释放到out/release目录。

./mk.sh -b

在执行./mk.sh -b编译buildroot时,默认编译会少一些插件或库,会弹出一些错误信息。

553x52px

   该提示信息表明编译需要git包,执行如下指令安装:

sudo apt-get install git

553x139px

   该提示表明标准的C++库没有安装,执行如下指令安装:

sudo apt-get install lib32stdc++-4.9-dev

553x105px

   该提示表明缺少libz库,执行如下指令安装:

sudo apt-get install lib32z1

   再执行./mk.sh -b指令即可正常编译了。编译完成后,最终打包好的文件系统linux-rootfs.img存放在out/release目录下。它包含了QT5.6的标准库,以及一些常用的QT示例。
  1. 生成update-linux.img文件系统

在android源码目录下执行如下命令生成单一android映像文件update-linux.img:

./mk.sh -U

   update-linux.img为整个QT系统升级文件的单一映像,包括了uboot,内核,文件系统等。注意,生成update-linux.img的先决条件是已经成功编译了uboot,内核和linux文件系统,缺一不可。