Skip to content

Commit

Permalink
[README] Expand the Build Requirements section.
Browse files Browse the repository at this point in the history
Two common issues of those on the gitter.im channel when trying to
build the xamarin-android repo are:

 1. Not using Mono 4.4.
 2. xxd(1) isn't installed.

Update the Build Requirements section to better detail the other
software packages which need to be installed in order to build the
xamarin-android repo.
  • Loading branch information
jonpryor committed Apr 29, 2016
1 parent 54ef952 commit fb8a6e9
Showing 1 changed file with 42 additions and 2 deletions.
44 changes: 42 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,14 +40,54 @@ Overridable MSBuild properties include:

# Build Requirements

Building Xamarin.Android requires the Java Development Kit (JDK), several
pieces of the Android SDK, and the Android NDK.
Building Xamarin.Android requires:

* [Mono 4.4 or later](#mono-sdk)
* [The Java Development Kit (JDK)](#jdk)
* [Autotools (`autoconf`, `automake`, etc.)](#autotools)
* [`xxd`](#xxd)
* [The Android SDK and NDK](#ndk)

<a name="mono-sdk" />
## Mono MDK

Mono 4.4 or later is required to build on [OS X][osx-mono] and Linux.

(This is because the build system uses the [XmlPeek][xmlpeek] task, which
was first added in Mono 4.4.)

[osx-mono]: http://www.mono-project.com/download/#download-mac
[xmlpeek]: https://msdn.microsoft.com/en-us/library/ff598684.aspx

<a name="jdk" />
## Java Development Kit

The Java Development Kit may be downloaded from the
[Oracle Java SE Downloads page][download-jdk].

[download-jdk]: http://www.oracle.com/technetwork/java/javase/downloads/

<a name="autotools" />
## Autotools

Autotools -- including `autoconf` and `automake` -- are required to build
the Mono runtimes.

On OS X, autotools are distributed with [Mono.framework][osx-mono].

<a name="xxd" />
## `xxd`

The [xxd][xxd] utility is used to build [src/monodroid](src/monodroid).
It is installed by default on OS X. Linux users may need to separately
install it; it may be part of the [**vim-common** package][sid-vim-common].

[xxd]: http://linux.die.net/man/1/xxd
[sid-vim-common]: https://packages.debian.org/sid/vim-common

<a name="ndk" />
## Android NDK, SDK

To simplify building Xamarin.Android, important pieces of the Android SDK
and Android NDK will be automatically downloaded and installed from
Google's website. Downloaded files are cached locally, by default into
Expand Down

0 comments on commit fb8a6e9

Please sign in to comment.