background image

On OSX, you should replace linux-x86 with darwin-x86.

Troubleshooting Common Build Errors Wrong Java Version 

If you are attempting to build froyo or earlier with Java 1.6, or gingerbread or later with Java 1.5, 
make will abort with a message such as

************************************************************   You   are   attempting   to   build 
with the incorrect version of java. Your version is: WRONG_VERSION. The correct version is: 
RIGHT_VERSION.   Please   follow   the   machine   setup   instructions   at 
http://source.android.com/download 
************************************************************ 

This may be caused by

failing to install the correct JDK as specified on the  

Initializing

  page. Building Android 

requires Sun JDK 5 or 6 depending on which release you are building.

another JDK that you previously installed appearing in your path. You can remove the 
offending JDK from your path with:

1

$ export PATH=${PATH/\/path\/to\/jdk\/dir:/}

Python Version 3 

Repo is built on particular functionality from Python 2.x and is unfortunately incompatible with Python 
3. In order to use repo, please install Python 2.x:

$ apt-get install python Gmake Version 3.82 

There is a bug in make version 3.82 on Mac OS that prevents building Android.

TODO: what the error looks like with GNU make 3.82 on older builds that don't explicitly detect it.

Follow the instructions on the 

Initializing

 page for reverting GNU make from 3.82 to 3.81.

Case Insensitive Filesystem 

If you are building on an HFS filesystem on Mac OS X, you may encounter an error such as

************************************************************   You   are   building   on   a   case-
insensitive   filesystem.   Please   move   your   source   tree   to   a   case-sensitive   filesystem. 
************************************************************ 

Please follow the instructions on the 

Initializing

 page for creating a case-sensitive disk image.

No USB Permission 

On   most   Linux   systems,   unprivileged   users   cannot   access   USB   ports   by  default.   If   you  see  a 
permission denied error, follow the instructions on the 

Initializing

 page for configuring USB access.