AOSP geliştirme için kurulum (2.3 - 8.0)

Bu sayfada Android 8.0 veya daha düşük sürümlerle geliştirme için nasıl kurulum yapılacağı anlatılmaktadır. Android 9.0 ve üzerini nasıl oluşturacağınızı öğrenmek için bkz. AOSP geliştirme için kurulum .

AOSP geliştirme için kurulum (5.0 - 8.0)

Android 5.0'dan 8.0'a kadar gerekli tüm paketlerin kurulumunu kolaylaştırmak için birlikte verilen Dockerfile'ı kullanmayı düşünün.

İşletim sistemleri

Android genellikle GNU Linux ile oluşturulmuştur. Mac OS X gibi desteklenmeyen sistemlerde sanal bir makinede Android oluşturmak da mümkündür.

Google, GNU Linux üzerinde geliştirme yapmanızı önerir. Android derleme sistemi normalde sistem DEX dosyalarını önceden derlemek için ART'ı yapı makinesinde çalıştırır. ART yalnızca Linux'ta çalışabilir, bu nedenle derleme sistemi Linux olmayan işletim sistemlerinde bu ön derleme adımını atlar ve bu da performansı düşük bir Android derlemesiyle sonuçlanır.

GNU Linux

  • Android 6.0 - Android 8.0: Ubuntu 14.04 (Güvenilir)
  • Android 5.x: Ubuntu 12.0

Mac OS X (Intel/x86)

  • Android 6.0 - AOSP 8.0: Xcode 4.5.2 ve Komut Satırı Araçları ile Mac OS X v10.10 (Yosemite) veya üzeri
  • Android 5.x: Xcode 4.5.2 ve Komut Satırı Araçları ile Mac OS X v10.8 (Mountain Lion)

JDK

AOSP geliştirme için kurulum (2.3 - 4.4)

Bu bölümde Android 2.3'ten Android 4.4'e kadar nasıl kurulum yapılacağına ilişkin bazı rehberlik sağlanmaktadır.

İşletim sistemleri

Android genellikle GNU Linux ile oluşturulmuştur. Windows gibi desteklenmeyen sistemlerde sanal bir makinede Android oluşturmak da mümkündür.

Google, GNU Linux üzerinde geliştirme yapmanızı önerir. Android derleme sistemi normalde sistem DEX dosyalarını önceden derlemek için ART'ı yapı makinesinde çalıştırır. ART yalnızca Linux'ta çalışabilir, bu nedenle derleme sistemi Linux olmayan işletim sistemlerinde bu ön derleme adımını atlar ve bu da performansı düşük bir Android derlemesiyle sonuçlanır.

GNU Linux

  • Android 2.3.x - Android 4.4: Ubuntu 12.04 (Hassas)

Mac OS X (Intel/x86)

  • Android 4.1.x - Android 4.4.x: Mac OS X v10.6 (Snow Leopard) veya Mac OS X v10.7 (Lion) ve Xcode 4.2 (Apple Geliştirici Araçları)
  • Android 2.3 - Android 4.0.x: Mac OS X v10.5 (Leopard) veya Mac OS X v10.6 (Snow Leopard) ve Mac OS X v10.5 SDK

GNU yapımı

Android 4.1.x - 4.4 için GNU make (gmake) 3.82'yi kullanın. Android 2.3 - 4.0.x için derleme hatalarını önlemek amacıyla gmake 3.82'den geri dönün .

Xcode ve diğer paketler

Mac OS X v10.8 veya daha düşük sürümler için Xcode'u Apple geliştirici sitesinden yükleyin. Henüz bir Apple geliştiricisi olarak kayıtlı değilseniz, indirmek için bir Apple Kimliği oluşturmanız gerekir.

Mac OS X v10.4 kullanıyorsanız Bison'u da yükleyin:

POSIXLY_CORRECT=1 sudo port install bison

MacPorts için sorun:

POSIXLY_CORRECT=1 sudo port install gmake libsdl git gnupg

Homebrew için sorun:

brew install gmake libsdl git gnupg2

Gmake 3.82'den geri dönüş

Android 4.0.x ve önceki sürümlerde, gmake 3.82'de Android'in oluşturulmasını engelleyen bir hata bulunmaktadır. MacPorts'u kullanarak 3.81 sürümünü aşağıdaki adımlarla yükleyebilirsiniz:

  1. /opt/local/etc/macports/sources.conf dosyasını düzenleyin ve rsync satırının üstüne file:///Users/Shared/dports ekleyin.

  2. dports dizinini oluşturun:

    mkdir /Users/Shared/dports
    
  3. Yeni dports dizininde şunu çalıştırın:

    svn co --revision 50980 http://svn.macports.org/repository/macports/trunk/dports/devel/gmake/ devel/gmake/
    
  4. Yeni yerel deponuz için bir bağlantı noktası dizini oluşturun:

    portindex /Users/Shared/dports
    
  5. Gmake'in alt sürümünü yükleyin:

    sudo port install gmake @3.81
    

JDK

Linux için JDK

Android Açık Kaynak Projesi (AOSP), prebuilts/jdk/ içinde OpenJDK'nın önceden oluşturulmuş sürümleriyle birlikte gelir; dolayısıyla ek kurulum gerekmez.

Android'in önceki sürümleri, JDK'nın ayrı bir kurulumunu gerektiriyordu. Ubuntu'da OpenJDK'yi kullanın

Ubuntu 15.04 ve üzeri için

Aşağıdakileri çalıştırın:

sudo apt-get update
sudo apt-get install openjdk-8-jdk

Ubuntu LTS 14.04 için

Ubuntu 14.04 için desteklenen OpenJDK 8 paketi mevcut değildir. Ubuntu 15.04 OpenJDK 8 paketleri Ubuntu 14.04 ile başarıyla kullanılmıştır. Daha yüksek paket sürümleri (örneğin, 15.10, 16.04 için olanlar), aşağıdaki talimatlar kullanıldığında 14.04'te çalışmaz.

  1. 64 bit mimariye yönelik .deb paketlerini old-releases.ubuntu.com adresinden indirin.

    • openjdk-8-jre-headless_8u45-b14-1_amd64.deb SHA256 ile 0f5aba8db39088283b51e00054813063173a4d8809f70033976f83e214ab56c0
    • openjdk-8-jre_8u45-b14-1_amd64.deb , SHA256 ile 9ef76c4562d39432b69baf6c18f199707c5c56a5b4566847df908b7d74e15849
    • openjdk-8-jdk_8u45-b14-1_amd64.deb , SHA256 6e47215cf6205aa829e6a0a64985075bd29d1f428a4006a80c9db371c2fc3c4c ile
  2. İsteğe bağlı olarak, indirilen dosyaların sağlama toplamlarını, 1. adımdan itibaren her pakette listelenen SHA256 dizesine göre doğrulayın. Örneğin, sha256sum aracıyla:

    sha256sum {downloaded.deb file}
    
  3. Paketleri yükleyin:

    sudo apt-get update
    
  4. İndirdiğiniz her .deb dosyası için dpkg çalıştırın. Eksik bağımlılıklar nedeniyle hatalar üretebilir:

    sudo dpkg -i {downloaded.deb file}
    
  5. Eksik bağımlılıkları düzeltmek için:

    sudo apt-get -f install
    

(İsteğe bağlı) Varsayılan Java sürümünü güncelleyin

İsteğe bağlı olarak, daha önce bahsedilen Ubuntu sürümleri için, aşağıdakileri çalıştırarak varsayılan Java sürümünü güncelleyin:

sudo update-alternatives --config java
sudo update-alternatives --config javac

Ubuntu 14.04 için gerekli paketleri yükleyin

Ubuntu 14.04 için gerekli paketleri kurmak üzere aşağıdaki komutları çalıştırın:

$ sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev libc6-dev-i386 libncurses5 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z-dev libgl1-mesa-dev libxml2-utils xsltproc unzip$

Ubuntu 12.04 için gerekli paketleri yükleyin

Ubuntu 12.04 için gerekli paketleri kurmak için aşağıdaki komutları çalıştırın:

$ sudo apt-get install git gnupg flex bison gperf build-essential zip curl libc6-dev libncurses5-dev:i386 x11proto-core-dev libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-glx:i386 libgl1-mesa-dev mingw32 tofrodos python-markdown libxml2-utils xsltproc zlib1g-dev:i386

sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/lib/i386-linux-gnu/libGL.so