I think that pretty much everything else is mandatory.
JBQ
> --
> You received this message because you are subscribed to the "Android Building" mailing list.
> To post to this group, send email to android-...@googlegroups.com
> To unsubscribe from this group, send email to
> android-buildi...@googlegroups.com
> For more options, visit this group at
> http://groups.google.com/group/android-building?hl=en
>
--
Jean-Baptiste M. "JBQ" Queru
Software Engineer, Android Open-Source Project, Google.
Questions sent directly to me that have no reason for being private
will likely get ignored or forwarded to a public forum with no further
warning.
After installing the usual development tools/libraries, I install the
following to build Android on Fedora 14 x86_64.
java-1.6.0-openjdk
java-1.6.0-openjdk-devel
glibc.i686
glibc-devel.i686
libstdc++.i686
zlib-devel.i686
ncurses-devel.i686
libX11-devel.i686
libXrender.i686
libXrandr.i686
gperf
readline-devel.i386
mesa-libGL-devel.i686
readline-devel.i686
Mostly differences in package naming. The .i686 suffix is to install
the 32-bit compatibility libraries; as far as I know, Fedora doesn't
have a single equivalent for ia32-libs in Debian/Ubuntu.
JBQ
--
Got it working perfectly on openSuSE 11.4 . I just did not write the full list down. Next time I will put it on a note and do a push to you or gerrit.
1. Install Linux Fedora 14 x86_64
2. Install all available updates (System->Administration->Software update, issue few times until there will be no more updates available)
3.Install Sun JDK:
3.1 Follow the instruction http://www.if-not-true-then-false.com/2010/install-sun-oracle-java-jdk-jre-6-on-fedora-centos-red-hat-rhel/
3.2 IMPORTANT!!!: Also add javadoc and javah through #alternative --install command using javac at the link above as example
4. Install required tools:
# yum install git valgrind gcc* flex bison gperf glibc-devel ncurses-devel.i686 xorg-x11-proto-devel libX11-devel.i686 \
readline-devel.i386 zlib-devel.i686 mesa-libGL-devel.i686 glibc-devel.i686 python-markdown
5. Downgrade make-3.82 to make-3.81 (Fedora 14 uses make-3.82 which is too restrictive) :
5.1 First you need to download the correct key (https://fedoraproject.org/static/E8E40FDE.txt) and import this by :
# rpm --import E8E40FDE.txt
5.2 Now you can downgrade make:
# yum downgrade make --releasever=13
5.3 And to avoid future upgrade, you need to add
exclude=make*
in /etc/yum.conf
6. Create bin folder in USER's home directory:
$ mkdir ~/bin
7. Download the Repo script and ensure it is executable:
$ curl http://android.git.kernel.org/repo > ~/bin/repo
$ chmod a+x ~/bin/repo
8. Create an empty directory to hold your working files (for example Android):
$ mkdir WORKING_DIRECTORY
$ cd WORKING_DIRECTORY
9.Run repo init to bring down the latest version of Repo with all its most recent bug fixes. You must specify a URL for the manifest, which specifies where the various repositories included in the Android source will be placed within your working directory.
$ repo init -u git://android.git.kernel.org/platform/manifest.git
10. To pull down files to your working directory from the repositories as specified in the default manifest, run
$ repo sync
11. Initialize the environment with the envsetup.sh script. Note that replacing "source" with a single dot saves a few characters, and the short form is more commonly used in documentation.
$ source build/envsetup.sh
12. Choose which target to build with lunch. The exact configuration can be passed as an argument, e.g.
$ lunch full-eng
The example above refers to a complete build for the emulator, with all debugging enabled. If run with no arguments lunch will prompt you to choose a target from the menu.
13. Build everything with make. GNU make can handle parallel tasks with a -jN argument, and it's common to use a number of tasks N that's between 1 and 2 times the number of hardware threads on the computer being used for the build. E.g. on a dual-E5520 machine (2 CPUs, 4 cores per CPU, 2 threads per core), the fastest builds are made with commands between make -j16 and make -j32.
$ make -j8