Android/Building: Difference between revisions

From OLPC
Jump to navigation Jump to search
(we don't provide the sources in the build directory now that we have git repositories)
(a build environment is needed before download)
Line 8: Line 8:
== Method ==
== Method ==


* follow the [http://source.android.com/source/downloading.html "Downloading the Source" guide] to install Repo,
* set up a build environment, see [https://source.android.com/source/initializing.html Initializing a Build Environment],
* install Repo, by following only the [http://source.android.com/source/downloading.html#installing-repo Installing Repo] section of the Downloading the Source guide,
* use Repo to download the Android source from OLPC repositories,
* 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 init -u git://dev.laptop.org/users/ben/android_manifest -b android-4.3.1-xo4
$ repo sync
$ repo sync
* go to [[#Source code]] see what patches are applied to which repository and check source code before start the build.
* go to [[#Source code]] see what patches are applied to which repository and check source code before start the build.
:* Why? --[[User:Quozl|Quozl]] 05:58, 21 July 2014 (UTC)
* ensure you installed all the tools needed to build Android [https://source.android.com/source/initializing.html Initializing a Build Environment]
* start the build:
* start the build:
$ . build/envsetup.sh
$ . build/envsetup.sh

Revision as of 05:58, 21 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

$ repo init -u git://dev.laptop.org/users/ben/android_manifest -b android-4.3.1-xo4
$ repo sync
  • go to #Source code see what patches are applied to which repository and check source code before start the build.
  • Why? --Quozl 05:58, 21 July 2014 (UTC)
  • start the build:
$ . build/envsetup.sh
$ lunch 14
$ make installclean && make -j8
  • ensure you have simg2img tools in your /usr/bin/ simg2img
  • start to create zd file:

Android only image

$ cd vendor/olpc/xo4/mkzd
$ ./mkzd.sh

Combine Android with Sugar

  • ensure you have a copy of the OLPC OS Linux, Sugar and Gnome build file, e.g. 32013o4.zd,
$ cd vendor/olpc/xo4/sugar-combiner
$ ./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, and edit it to match file names,
  • run mkzd.sh

Source code

source code for building Android is a combination of 4 parts.

  • You can also download kernel image form device/olpc/xo4-kernel git repository if you don't want to change kernel
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

See Also