From Fedora Project Wiki

This document will guide you through the Android PDK (Product Development Kit) setup

Stop (medium size).png
The following instructions were tested only on Fedora 13 with latest stable updates (as of Aug 7, 2010)

Required packages

  • Git >= 1.5.4
  • gpg
  • JDK 5.0, update 12 or higher (Java 6 not supported)
  • GCC toolchain, flex, bison-devel, gperf, SDL-devel, esound-devel, wxGTK-devel, zip, curl.


Basic toolchain:

yum --setopt=group_package_types=mandatory groupinstall 'Development Tools'

Remaining development packages:

yum install SDL-devel curl esound-devel git ncurses-devel wxGTK-devel zip

Sun/Oracle JDK 1.5.0

This is a little tricky: Sun/Oracle JDK is officially EOL (End-Of-Life) and JPackage doesn't provide "compat" package for 1.5.0 update 22.

Download the JDK from by choosing the "JDK 5.0 Update N" link and from there the "RPM in self-extracting file" for Linux. You will have to complete a registration form. Make sure to use a valid email address since you will receive your download link there. Then run the executable and install the extracted RPM (if you run the executable as root it will automatically attempt to install it).

Make sure to choose the 32 bit and RPM version (not the self-extracting archive).

Then enable my "backports" repository by running (as root):

wget -O /etc/yum.repos.d/fedora-backports.repo

and then install the updated JPackage "compat" package:

yum install java-1.5.0-sun-compat

Then use update-alternatives to make java, javac and javadoc point to the Sun/Oracle JDK versions.

Install the "repo" tool

The repo tool is used to pull from the plethora of git repositories making the android project.

Make sure you have "$HOME/.local/bin" in your PATH (and create that directory if not there already).

mkdir -p ~/.local/bin
curl > ~/.local/bin/repo
chmod +x ~/.local/bin/repo

Initialize the development environment

Create a directory to hold your files:

mkdir android
cd android

Download updated repo's "manifest" files: (NOTE: They will be pointing to the post-release semi-stable experimental branch)

repo init -u git://

Now sync (download) all repositories with:

repo sync

Switching between different release branches (or "code-lines")

In your "android" directory there's an hidden directory called ".repo". This directory holds configuration for the "repo" tools and check-outs of various android projects as bare git repositories.

You will simply need to copy .repo/manifests/default.xml somewhere, edit it, update the .repo/manifest.xml symlink to point to the new file and then re-run "repo sync".