Difference between revisions of "OS: Android - Download"

From OnnoWiki
Jump to navigation Jump to search
 
(18 intermediate revisions by the same user not shown)
Line 1: Line 1:
==Persiapan==
 
 
Sumber: http://source.android.com/source/initializing.html
 
 
Before you download and build the Android source, ensure your system meets the following requirements:
 
 
* A Linux or Mac system. It is also possible to build Android in a virtual machine on unsupported systems such as Windows. If you are running Linux in a virtual machine, you need at least 16GB of RAM/swap and 30GB or more of disk space in order to build the Android tree.
 
* A 64-bit environment is required for Gingerbread (2.3.x) and newer versions, including the master branch. You can compile older versions on 32-bit systems.
 
* 30GB of free disk space to complete a single build and up to 100GB or more for a full set of builds. The source download is approximately 8.5GB in size.
 
* Python 2.6 -- 2.7, which you can download from python.org.
 
* GNU Make 3.81 -- 3.82, which you can download from gnu.org,
 
* JDK 6 if you wish to build Gingerbread or newer; JDK 5 for Froyo or older. You can download both from java.sun.com.
 
* Git 1.7 or newer. You can find it at git-scm.com.
 
 
===Instalasi sun6 JDK===
 
 
Sebagai user biasa lakukan
 
 
wget --no-cookies --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F" http://download.oracle.com/otn-pub/java/jdk/6u45-b06/jdk-6u45-linux-x64.bin
 
chmod u+x jdk-6u45-linux-x64.bin
 
./jdk-6u45-linux-x64.bin
 
sudo mv jdk1.6.0_45 /opt
 
sudo update-alternatives --install "/usr/bin/java" "java" "/opt/jdk1.6.0_45/bin/java" 1
 
sudo update-alternatives --install "/usr/bin/javac" "javac" "/opt/jdk1.6.0_45/bin/javac" 1
 
sudo update-alternatives --install "/usr/lib/mozilla/plugins/libjavaplugin.so" "mozilla-javaplugin.so" "/opt/jdk1.6.0_45/jre/lib/amd64/libnpjp2.so" 1
 
sudo update-alternatives --install "/usr/bin/javaws" "javaws" "/opt/jdk1.6.0_45/bin/javaws" 1
 
 
Jika ada lebih dari satu Java, kita dapat set default
 
 
sudo update-alternatives --config java
 
sudo update-alternatives --config javac
 
 
Atau set JAVA_HOME env variable:
 
 
export _JAVA_HOME=/opt/jdk1.6.0_45/
 
 
===Instalasi Aplikasi Pendukung===
 
 
Lakukan
 
 
sudo apt-get update
 
sudo apt-get -q -y install git gnupg flex bison gperf build-essential \
 
  zip curl libc6-dev libncurses5-dev x11proto-core-dev \
 
  libx11-dev libreadline6-dev libgl1-mesa-glx \
 
  libgl1-mesa-dev g++-multilib mingw32 tofrodos \
 
  python-markdown libxml2-utils xsltproc zlib1g-dev lib32ncurses5 lib32stdc++6 \
 
  gcc-multilib g++-multilib aptitude p7zip-full \
 
  git-core gitk git-gui git-doc curl gperf zlib1g-dev zlib1g \
 
  flex bison autoconf texinfo build-essential python2.7-dev xorg-dev \
 
  lib32gmp3-dev lib32mpfr-dev lib32ncurses5-dev \
 
  libmpc-dev libgmp3-dev libmpfr-dev libncurses5-dev
 
  bluez-alsa libgettextpo0 gstreamer0.10-plugins-base \
 
  gstreamer0.10-plugins-good gtk2-engines gtk2-engines-murrine \
 
  gtk2-engines-pixbuf gtk2-engines-oxygen \
 
  gvfs ibus-gtk libacl1 libaio1 libao4 libasound2 \
 
  libasound2-plugins libasyncns0 libattr1 libaudio2 \
 
  libcanberra-gtk-module libcap2 \
 
  bluez-alsa gstreamer0.10-plugins-base gstreamer0.10-plugins-good \
 
  libasound2 libasound2-plugins libcanberra-gtk-module libcupsimage2 libcurl3 libesd0 \
 
  libglapi-mesa libglu1-mesa libqt4-opengl libqtwebkit4 librsvg2-common libsdl-mixer1.2 libsdl-image1.2 \
 
  libsdl-net1.2 libsdl-ttf2.0-0 libsdl1.2debian \
 
  gstreamer0.10-plugins-base gstreamer0.10-plugins-good libcupsimage2 libcurl3 \
 
  libglapi-mesa libglu1-mesa libqt4-opengl libqtwebkit4 librsvg2-common \
 
  libssl1.0.0 libxml2 libxslt1.1
 
 
 
Sumber: projects.kde.org/projects/playground/mobile/necessitas/ministro/repository/revisions/master/raw/Necessitas_SDK/setup_ubuntu_for_necessitas_build.sh
 
 
 
 
 
# Oracle's Java6; select it when asked.
 
sudo apt-get -q -y  install sun-java6-jdk sun-java6-jre
 
sudo update-alternatives --config java
 
 
 
Tambahkan di /etc/apt/sources.list
 
 
deb http://ubuntu.mirror.cambrium.nl/ubuntu/ quantal main universe
 
 
Download ia32-libs-multiarch dari
 
 
http://sg.archive.ubuntu.com/ubuntu/pool/universe/i/ia32-libs/ia32-libs_20090808ubuntu36_amd64.deb
 
 
Install menggunakan
 
 
dpkg -i ia32-libs-multiarch_20090808ubuntu36_i386.deb
 
 
 
  sudo apt-get -q -y install ia32-libs
 
 
===Instalasi udev===
 
 
 
Edit
 
 
sudo vi /etc/udev/rules.d/51-android.rules
 
 
Isi dengan
 
 
# adb protocol on passion (Nexus One)
 
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4e12", MODE="0600", OWNER="<username>"
 
# fastboot protocol on passion (Nexus One)
 
SUBSYSTEM=="usb", ATTR{idVendor}=="0bb4", ATTR{idProduct}=="0fff", MODE="0600", OWNER="<username>"
 
# adb protocol on crespo/crespo4g (Nexus S)
 
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4e22", MODE="0600", OWNER="<username>"
 
# fastboot protocol on crespo/crespo4g (Nexus S)
 
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4e20", MODE="0600", OWNER="<username>"
 
# adb protocol on stingray/wingray (Xoom)
 
SUBSYSTEM=="usb", ATTR{idVendor}=="22b8", ATTR{idProduct}=="70a9", MODE="0600", OWNER="<username>"
 
# fastboot protocol on stingray/wingray (Xoom)
 
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="708c", MODE="0600", OWNER="<username>"
 
# adb protocol on maguro/toro (Galaxy Nexus)
 
SUBSYSTEM=="usb", ATTR{idVendor}=="04e8", ATTR{idProduct}=="6860", MODE="0600", OWNER="<username>"
 
# fastboot protocol on maguro/toro (Galaxy Nexus)
 
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4e30", MODE="0600", OWNER="<username>"
 
# adb protocol on panda (PandaBoard)
 
SUBSYSTEM=="usb", ATTR{idVendor}=="0451", ATTR{idProduct}=="d101", MODE="0600", OWNER="<username>"
 
# fastboot protocol on panda (PandaBoard)
 
SUBSYSTEM=="usb", ATTR{idVendor}=="0451", ATTR{idProduct}=="d022", MODE="0600", OWNER="<username>"
 
# usbboot protocol on panda (PandaBoard)
 
SUBSYSTEM=="usb", ATTR{idVendor}=="0451", ATTR{idProduct}=="d00f", MODE="0600", OWNER="<username>"
 
# usbboot protocol on panda (PandaBoard ES)
 
SUBSYSTEM=="usb", ATTR{idVendor}=="0451", ATTR{idProduct}=="d010", MODE="0600", OWNER="<username>"
 
# adb protocol on grouper/tilapia (Nexus 7)
 
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4e42", MODE="0600", OWNER="<username>"
 
# fastboot protocol on grouper/tilapia (Nexus 7)
 
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4e40", MODE="0600", OWNER="<username>"
 
# adb protocol on manta (Nexus 10)
 
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4ee2", MODE="0600", OWNER="<username>"
 
# fastboot protocol on manta (Nexus 10)
 
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4ee0", MODE="0600", OWNER="<username>"
 
 
 
==Download==
 
==Download==
  
Line 148: Line 15:
 
  chmod a+x ~/bin/repo
 
  chmod a+x ~/bin/repo
  
Untuk beberapa client sekaligus, sebaiknya kita menggunakan mirror. Asumsinya kita melalukan mirror pada /usr/local/aosp/mirror.
+
===Untuk Mirror Repository===
Lakukan sebagai user biasa
+
 
 +
Ada baiknya kita melakukan [[OS: Android - Membuat Mirror Source | Mirrot Source Code Android]] supaya bisa di copy ke beberapa komputer tanpa perlu men-download lagi.
  
sudo mkdir -p /usr/local/aosp/mirror
+
Folder mirror yang di sarankan
  sudo mount --bind /media/onno/onnolibrary/repository/android-source/mirror/ /usr/local/aosp/mirror/
+
 
  sudo chmod -Rf 777 /usr/local/aosp
+
  /usr/local/aosp/mirror
sudo chown -Rf nobody.nogroup /usr/local/aosp
+
  /usr/local/aokp/mirror
  cd /usr/local/aosp/mirror
+
  /usr/local/cyanogenmod/mirror
repo init -u https://android.googlesource.com/mirror/manifest --mirror
+
 
repo sync
+
===Mengambil dari Mirror===
  
 
Di sisi client, dapat melakukan sebagai userbiasa
 
Di sisi client, dapat melakukan sebagai userbiasa
Line 170: Line 38:
 
  repo sync
 
  repo sync
  
Untuk melakukan sync, lakukan secara berurut, dari sisi mirror dan dari sisi master.
 
  
$ cd /usr/local/aosp/mirror
+
atau
$ repo sync
 
  
  $ cd ~/android-source
+
  repo init -u /usr/local/aokp/mirror/platform/manifest.git
  $ repo sync
+
repo sync
 +
 
 +
atau
 +
 
 +
repo init -u /usr/local/cynogenmod/mirror/platform/manifest.git
 +
repo sync
 +
 
 +
 
 +
Untuk melakukan sync.
 +
Sebagai user biasa, lakukan secara berurut, dari sisi mirror dan dari sisi master.
 +
 
 +
cd ~/android-source
 +
  repo sync
 +
 
 +
 
 +
cd /usr/local/aosp/mirror
 +
repo sync
 +
 
 +
cd /usr/local/aokp/mirror
 +
repo sync
 +
 
 +
cd /usr/local/cyanogenmod/mirror
 +
repo sync
  
 
===Tanpa Mirror===
 
===Tanpa Mirror===
Line 199: Line 87:
 
* http://source.android.com/source/initializing.html
 
* http://source.android.com/source/initializing.html
 
* http://source.android.com/source/downloading.html
 
* http://source.android.com/source/downloading.html
 +
* http://projects.kde.org/projects/playground/mobile/necessitas/ministro/repository/revisions/master/raw/Necessitas_SDK/setup_ubuntu_for_necessitas_build.sh
 +
  
 
==Pranala Menarik==
 
==Pranala Menarik==
Line 227: Line 117:
 
* [[OS: Mengerti System Call]]
 
* [[OS: Mengerti System Call]]
 
* [[OS: Membuat Kernel Modul]]
 
* [[OS: Membuat Kernel Modul]]
 +
* [[Android]]
 +
* [[Pemrogramman Android]]
 +
* [[OS: Android - Mempersiapkan Development Environment]]
 +
* [[OS: Android - Memeriksa Spesifikasi Handphone yang digunakan]]
 +
* [[OS: Android - Membuat Mirror Source]]
 
* [[OS: Android - Download]]
 
* [[OS: Android - Download]]
 +
* [[OS: Android - Membuat Folder untuk Bekerja]]
 
* [[OS: Android - Mirror Source]]
 
* [[OS: Android - Mirror Source]]
 +
* [[OS: Android - Mirror Source AOKP]]
 +
* [[OS: Android - Mirror Source CyanogenMod]]
 
* [[OS: Android - Build]]
 
* [[OS: Android - Build]]
 +
* [[OS: Android - Build CyanogenMod]]
 +
* [[OS: Android - Build AOSP]]

Latest revision as of 08:48, 3 September 2013

Download

Sumber: http://source.android.com/source/downloading.html

Inisialisasi Source Code

Sebagai user biasa lakukan

mkdir ~/bin
PATH=~/bin:$PATH

sudo apt-get install curl

curl https://dl-ssl.google.com/dl/googlesource/git-repo/repo > ~/bin/repo
chmod a+x ~/bin/repo

Untuk Mirror Repository

Ada baiknya kita melakukan Mirrot Source Code Android supaya bisa di copy ke beberapa komputer tanpa perlu men-download lagi.

Folder mirror yang di sarankan

/usr/local/aosp/mirror
/usr/local/aokp/mirror
/usr/local/cyanogenmod/mirror

Mengambil dari Mirror

Di sisi client, dapat melakukan sebagai userbiasa

mkdir -p ~/android-source
cd ~/android-source

git config --global user.email "you@example.com"
git config --global user.name "Your Name"

repo init -u /usr/local/aosp/mirror/platform/manifest.git
repo sync


atau

repo init -u /usr/local/aokp/mirror/platform/manifest.git
repo sync

atau

repo init -u /usr/local/cynogenmod/mirror/platform/manifest.git
repo sync


Untuk melakukan sync. Sebagai user biasa, lakukan secara berurut, dari sisi mirror dan dari sisi master.

cd ~/android-source
repo sync


cd /usr/local/aosp/mirror
repo sync
cd /usr/local/aokp/mirror
repo sync
cd /usr/local/cyanogenmod/mirror
repo sync

Tanpa Mirror

Alternatif lain, kalau hanya untuk sendiri tidak perlu melakukan mirror

mkdir -p ~/android-source
cd ~/android-source

git config --global user.email "you@example.com"
git config --global user.name "Your Name"

repo init -u https://android.googlesource.com/platform/manifest

Download Source Code

cd ~/android-source
repo sync

Referensi


Pranala Menarik