Android/Building: Difference between revisions
< Android
Jump to navigation
Jump to search
(→Method) |
(→Method) |
||
Line 13: | Line 13: | ||
$ repo init -u git://dev.laptop.org/users/ben/android_manifest -b android-4.3.1-xo4 |
$ repo init -u git://dev.laptop.org/users/ben/android_manifest -b android-4.3.1-xo4 |
||
$ repo sync |
$ repo sync |
||
* if you would like to include google services, download developer package from here [http://dev.laptop.org/~ben/gapps.tar.gz gapps] |
* if you would like to include google services, download developer package from here [http://dev.laptop.org/~ben/gapps.tar.gz gapps]. See also [http://wiki.cyanogenmod.org/w/Google_Apps Google Apps] |
||
$ tar -zxvf gapps.tar.gz |
$ tar -zxvf gapps.tar.gz |
||
$ mv gapps vendor/olpc/xo4/ |
$ mv gapps vendor/olpc/xo4/ |
Revision as of 13:38, 22 July 2014
How to build an Android and OLPC OS dual-boot image for XO-4.
Ingredients
- a well connected development system,
- about 20 GB of download capability,
Method
- set up a build environment, see Initializing a Build Environment,
- install Repo, by following only the Installing Repo section of the Downloading the Source guide,
- use Repo to download the Android source from OLPC repositories,
$ repo init -u git://dev.laptop.org/users/ben/android_manifest -b android-4.3.1-xo4 $ repo sync
- if you would like to include google services, download developer package from here gapps. See also Google Apps
$ tar -zxvf gapps.tar.gz $ mv gapps vendor/olpc/xo4/
- start the build:
$ . build/envsetup.sh $ lunch 14 $ make installclean && make -j8
- (the -j8 means to run eight concurrent threads of build ... the number of threads should be chosen according to how many CPU cores your build environment has access to.)
- install the android-tools-fsutils package or ensure you have simg2img tools in your /usr/bin/ simg2img
- create zd file:
Android only image
$ cd vendor/olpc/xo4/mkzd $ sudo ./mkzd.sh
Combine Android with Sugar
- ensure you have a copy of the OLPC OS Linux, Sugar and Gnome build file, e.g. 32014o4.zd,
$ cd vendor/olpc/xo4/sugar-combiner $ make $ sudo ./mkzd.sh
Alternative Method
To merge an already published Android build with an already published OLPC OS derived build:
- download the system.img, ramdisk.img, and kernel files from the Android build directory,
- download the build derived from OLPC OS, e.g. 32013xx4.zd or 4_0b125.zd,
- download the mkzd.sh tool (from http://dev.laptop.org/git/users/quozl/mkzd/ or http://dev.laptop.org/git/users/ben/android_vendor_olpc_xo4/ ), and edit it to match file names,
- run mkzd.sh
Source code
source code for building Android is a combination of 4 parts.
- OLPC Android kernel for XO4 Android/Kernel
- You can also download kernel image form device/olpc/xo4-kernel git repository if you don't want to change kernel
- source code from google AOSP project branch "android-4.3.1_r1". "Downloading the Source" guide
- OLPC patches for AOSP project.
frameworks/av
|
git repository |
frameworks/base
|
git repository |
frameworks/native
|
git repository |
system/core
|
git repository |
hardware/libhardware
|
git repository |
hardware/libhardware_legacy
|
git repository |
hardware/marvell
|
git repository |
build
|
git repository |
bionic
|
git repository |
external/bluetooth/bluedroid
|
git repository |
external/kernel-headers
|
git repository |
external/webkit
|
git repository |
packages/apps/Calendar
|
git repository |
packages/apps/Gallery2
|
git repository |
packages/apps/Launcher2
|
git repository |
packages/providers/CalendarProvider
|
git repository |
- source code from vendor, Marvell and OLPC
vendor/marvell/generic
|
git repository (not available) |
vendor/marvell/external
|
git repository (not available) |
vendor/olpc/xo4
|
git repository |
device/olpc/xo4
|
git repository |
device/olpc/xo4-kernel
|
git repository |