Difference between revisions of "IoTGateway/BSP/Android/Android BSP User Guide 6.0.1 2.1.0"
From ESS-WIKI
Line 3: | Line 3: | ||
=== Setup Ubuntu host computer === | === Setup Ubuntu host computer === | ||
− | Install Ubuntu 14.04 LTS 64bit. You should have about 80 Gbytes of free disk space for building images. | + | === <span style="font-family:times new roman,times,serif;"><span style="font-size:small;">Install Ubuntu 14.04 LTS 64bit. You should have about 80 Gbytes of free disk space for building images.</span></span> === |
− | Go to [http://releases.ubuntu.com/14.04/ http://releases.ubuntu.com/14.04/] and download 64-bit PC (AMD64) desktop image: [http://releases.ubuntu.com/14.04/ubuntu-14.04.3-desktop-amd64.iso http://releases.ubuntu.com/14.04/ubuntu-14.04.3-desktop-amd64.iso] for the installation. | + | === <span style="font-family:times new roman,times,serif;"><span style="font-size:small;">Go to [http://releases.ubuntu.com/14.04/ http://releases.ubuntu.com/14.04/] and download 64-bit PC (AMD64) desktop image: [http://releases.ubuntu.com/14.04/ubuntu-14.04.3-desktop-amd64.iso http://releases.ubuntu.com/14.04/ubuntu-14.04.3-desktop-amd64.iso] for the installation.</span></span> === |
− | <span style="font- | + | === <span style="font-family:times new roman,times,serif;"><span style="font-size:small;">Install docker and Use docker</span></span> === |
− | <span style="font- | + | === <span style="font-family:times new roman,times,serif;"><span style="font-size:small;">Please use docker environment to compiler Android 6.0.1_2.1.0</span></span> === |
− | <span style="font- | + | === <span style="font-family:times new roman,times,serif;"><span style="font-size:small;">Android 6.0.1_2.1.0 Docker</span></span> === |
− | <span style="font- | + | === <span style="font-family:times new roman,times,serif;"><span style="font-size:small;"><small>Image Repository : advrisc/u14.04-imx6abv4</small></span></span> === |
− | <span style="font- | + | === <span style="font-family:times new roman,times,serif;"><span style="font-size:small;"><small>Image Tag : 20160825</small></span></span> === |
− | <span style="font- | + | === <span style="font-family:times new roman,times,serif;"><span style="font-size:small;">Reference: <small>[http://ess-wiki.advantech.com.tw/view/IoTGateway/Docker http://ess-wiki.advantech.com.tw/view/IoTGateway/Docker]</small></span></span> === |
=== Getting Android source code (Android 6.0.1_2.1.0/kernel Yocto-2.0 /U-Boot Yocto-2.0) === | === Getting Android source code (Android 6.0.1_2.1.0/kernel Yocto-2.0 /U-Boot Yocto-2.0) === | ||
Line 29: | Line 29: | ||
=== Remove the .repo and .git file === | === Remove the .repo and .git file === | ||
− | <pre | + | <pre>$ find . -name .repo | xargs rm -rf |
− | $ find . -name .git | xargs rm -rf | + | $ find . -name .git | xargs rm -rf </pre> |
=== Patch to Android M6.0.1_2.1.0 === | === Patch to Android M6.0.1_2.1.0 === | ||
− | + | <pre>$ cd myandroid/bootable/bootloader/uboot-imx/ | |
− | < | ||
$ patch -p1 <../../../patches_android_6.0.1/6001-Uboot_Yocto_4.1.15_1.2.0-to-Android_M6.0.1_2.1.0.patch | $ patch -p1 <../../../patches_android_6.0.1/6001-Uboot_Yocto_4.1.15_1.2.0-to-Android_M6.0.1_2.1.0.patch | ||
$ cd myandroid/kernel_imx/ | $ cd myandroid/kernel_imx/ | ||
$ patch -p1 <../patches_android_6.0.1/6001-Linux_Yocto_4.1.15_1.2.0-to-Android_M6.0.1_2.1.0.patch | $ patch -p1 <../patches_android_6.0.1/6001-Linux_Yocto_4.1.15_1.2.0-to-Android_M6.0.1_2.1.0.patch | ||
− | $ cd myandroid/ </ | + | $ cd myandroid/ |
+ | </pre> | ||
=== Building Android 6.0.1_2.1.0 image for SD card === | === Building Android 6.0.1_2.1.0 image for SD card === | ||
+ | |||
=== Naming Rule === | === Naming Rule === | ||
− | It is consist of the model name followed by "AB" plus version number, for example, 4410ABV2080 which "4410" stands for RSB-4410, "AB" is acronym of Android BSP, "V2080" stands for Version 2.080; other model names list below: | + | It is consist of the model name followed by "AB" plus version number, for example, 4410ABV2080 which "4410" stands for RSB-4410, "AB" is acronym of Android BSP, "V2080" stands for Version 2.080; other model names list below: |
<small> "3420" stands for ROM-3420 | <small> "3420" stands for ROM-3420 | ||
Line 55: | Line 56: | ||
=== To build boot loader === | === To build boot loader === | ||
− | :Perform the following command in terminal console | + | :Perform the following command in terminal console<br/> |
− | :: | + | :<pre><span style="background-color: rgb(245, 245, 245); white-space: pre-wrap;">$ make -j4 bootloader</span></pre> |
+ | |||
:The two files, u-boot_crc.bin & u-boot_crc.bin.crc, will be located in directory, ./out/target/product/product_name | :The two files, u-boot_crc.bin & u-boot_crc.bin.crc, will be located in directory, ./out/target/product/product_name | ||
Line 62: | Line 64: | ||
:Perform the following command in terminal console | :Perform the following command in terminal console | ||
− | :to do build bootimage | + | :to do build bootimage<br/> |
− | + | :<pre>$ make -j4 bootimage</pre> | |
=== To build boot image === | === To build boot image === | ||
:Perform the following command in terminal console | :Perform the following command in terminal console | ||
− | :to do build systemimage | + | :to do build systemimage<br/> |
− | + | :<pre>$ make -j4 systemimage</pre> | |
− | + | ||
− | + | :<pre>$ out/host/linux-x86/bin/simg2img out/target/product/$PRODUCT/system.img out/target/product/$PRODUCT/system_raw.img</pre> | |
+ | |||
+ | :<pre>$ mv out/target/product/$PRODUCT/system_raw.img out/target/product/$PRODUCT/system.img</pre> | ||
− | simg2img is a tool that converts a sparse system image to a raw system image on a Linux host PC and is located in myandroid/out/host/linux-x86/bin/simg2img. | + | <span style="color:#B22222;">simg2img is a tool that converts a sparse system image to a raw system image on a Linux host PC and is located in myandroid/out/host/linux-x86/bin/simg2img.</span> |
Revision as of 08:14, 8 December 2016
Contents
- 1 Setup host computer
- 1.1 Setup Ubuntu host computer
- 1.2 Install Ubuntu 14.04 LTS 64bit. You should have about 80 Gbytes of free disk space for building images.
- 1.3 Go to http://releases.ubuntu.com/14.04/ and download 64-bit PC (AMD64) desktop image: http://releases.ubuntu.com/14.04/ubuntu-14.04.3-desktop-amd64.iso for the installation.
- 1.4 Install docker and Use docker
- 1.5 Please use docker environment to compiler Android 6.0.1_2.1.0
- 1.6 Android 6.0.1_2.1.0 Docker
- 1.7 Image Repository : advrisc/u14.04-imx6abv4
- 1.8 Image Tag : 20160825
- 1.9 Reference: http://ess-wiki.advantech.com.tw/view/IoTGateway/Docker
- 1.10 Getting Android source code (Android 6.0.1_2.1.0/kernel Yocto-2.0 /U-Boot Yocto-2.0)
- 1.11 Remove the .repo and .git file
- 1.12 Patch to Android M6.0.1_2.1.0
- 1.13 Building Android 6.0.1_2.1.0 image for SD card
- 1.14 Naming Rule
- 1.15 Build Instructions
- 1.16 To build boot loader
- 1.17 To build boot image
- 1.18 To build boot image
Setup host computer
Setup Ubuntu host computer
Install Ubuntu 14.04 LTS 64bit. You should have about 80 Gbytes of free disk space for building images.
Go to http://releases.ubuntu.com/14.04/ and download 64-bit PC (AMD64) desktop image: http://releases.ubuntu.com/14.04/ubuntu-14.04.3-desktop-amd64.iso for the installation.
Install docker and Use docker
Please use docker environment to compiler Android 6.0.1_2.1.0
Android 6.0.1_2.1.0 Docker
Image Repository : advrisc/u14.04-imx6abv4
Image Tag : 20160825
Reference: http://ess-wiki.advantech.com.tw/view/IoTGateway/Docker
Getting Android source code (Android 6.0.1_2.1.0/kernel Yocto-2.0 /U-Boot Yocto-2.0)
$ mkdir myandroid $ mkdir bin $ cd myandroid/ $ curl [https://storage.googleapis.com/git-repo-downloads/repo https://storage.googleapis.com/git-repo-downloads/repo] > ../bin/repo $ chmod a+x ../bin/repo $ ../bin/repo init -u https://github.com/ADVANTECH-Corp/android-manifest.git -b m6.0.1_2.1.0-ga $ ../bin/repo sync
Remove the .repo and .git file
$ find . -name .repo | xargs rm -rf $ find . -name .git | xargs rm -rf
Patch to Android M6.0.1_2.1.0
$ cd myandroid/bootable/bootloader/uboot-imx/ $ patch -p1 <../../../patches_android_6.0.1/6001-Uboot_Yocto_4.1.15_1.2.0-to-Android_M6.0.1_2.1.0.patch $ cd myandroid/kernel_imx/ $ patch -p1 <../patches_android_6.0.1/6001-Linux_Yocto_4.1.15_1.2.0-to-Android_M6.0.1_2.1.0.patch $ cd myandroid/
Building Android 6.0.1_2.1.0 image for SD card
Naming Rule
It is consist of the model name followed by "AB" plus version number, for example, 4410ABV2080 which "4410" stands for RSB-4410, "AB" is acronym of Android BSP, "V2080" stands for Version 2.080; other model names list below:
"3420" stands for ROM-3420 "5420" stands for ROM-5420 "7420" stands for ROM-7420 "DS31" stands for UBC-DS31 "U220" stands for UBC-220
Build Instructions
To build boot loader
- Perform the following command in terminal console
<span style="background-color: rgb(245, 245, 245); white-space: pre-wrap;">$ make -j4 bootloader</span>
- The two files, u-boot_crc.bin & u-boot_crc.bin.crc, will be located in directory, ./out/target/product/product_name
To build boot image
- Perform the following command in terminal console
- to do build bootimage
$ make -j4 bootimage
To build boot image
- Perform the following command in terminal console
- to do build systemimage
$ make -j4 systemimage
$ out/host/linux-x86/bin/simg2img out/target/product/$PRODUCT/system.img out/target/product/$PRODUCT/system_raw.img
$ mv out/target/product/$PRODUCT/system_raw.img out/target/product/$PRODUCT/system.img
simg2img is a tool that converts a sparse system image to a raw system image on a Linux host PC and is located in myandroid/out/host/linux-x86/bin/simg2img.