Bir Yapı Ortamı Oluşturma

Bu bölüm, Android kaynak dosyalarını oluşturmak için yerel çalışma ortamınızı nasıl kuracağınızı açıklar. Linux kullanmalısınız; MacOS veya Windows altında oluşturma desteklenmez. Akılda önemli Üstü kalsın /usr/bin/python ikili de.

Tüm kod inceleme ve kod güncelleme işlemine genel bakış için bkz bir Patch Life .

Şube seçimi

Derleme ortamı için bazı gereksinimler, derlemeyi planladığınız kaynak kodun sürümüne göre belirlenir. Mevcut şube tam listesi için bkz Yapı Numaraları . Ayrıca indirmek ve en son kaynak kodunu (denilen inşa etmek seçebilir master sen depoyu başlatmak zaman sadece şube şartname ihmal bu durumda).

Bir dal seçtikten sonra, yapı ortamınızı kurmak için aşağıdaki uygun talimatları izleyin.

Linux yapı ortamı kurma

Bu talimatlar da dahil olmak üzere tüm branşlarda için geçerlidir master .

Android yapısı rutin olarak evde Ubuntu LTS (14.04) ve Debian testlerinde test edilir. Diğer dağıtımların çoğu, gerekli derleme araçlarına sahip olmalıdır.

Gingerbread (2.3.x) ve dahil üst sürümler için master dalı, 64-bit ortam gereklidir. Daha eski sürümler 32 bit sistemlerde derlenebilir.

Gerekli paketleri yükleme (Ubuntu 18.04)

Ubuntu'nun 64 bit sürümüne ihtiyacınız var.

sudo apt-get install git-core gnupg flex bison build-essential zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 libncurses5 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z1-dev libgl1-mesa-dev libxml2-utils xsltproc unzip fontconfig

Gerekli paketleri kurma (Ubuntu 14.04)

64 bit Ubuntu sürümüne ihtiyacınız var (14.04 önerilir).

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

Gerekli paketleri kurma (Ubuntu 12.04)

Android'in eski sürümlerini oluşturmak için Ubuntu 12.04'ü kullanabilirsiniz. Sürüm 12.04 değil desteklenir master veya son bültenleri.

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 g++-multilib 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

Gerekli paketleri kurma (Ubuntu 10.04-11.10)

Ubuntu 10.04-11.10 üzerine inşa etmek artık desteklenmemektedir, ancak AOSP'nin eski sürümlerini oluşturmak için faydalı olabilir.

sudo apt-get install git gnupg flex bison gperf build-essential zip curl zlib1g-dev libc6-dev lib32ncurses5-dev ia32-libs x11proto-core-dev libx11-dev lib32readline5-dev lib32z-dev libgl1-mesa-dev g++-multilib mingw32 tofrodos python-markdown libxml2-utils xsltproc

Ubuntu 10.10'da:

sudo ln -s /usr/lib32/mesa/libGL.so.1 /usr/lib32/mesa/libGL.so

Ubuntu 11.10'da:

sudo apt-get install libx11-dev:i386

USB erişimini yapılandırma

Bir topluluk tutulan varsayılan seti takın udev için talimatları uygulayarak tüm Android cihazlar için kurallar geliştirilmesi için bir cihaz yukarı Set .

Ayrı bir çıktı dizini kullanma

Varsayılan olarak, her yapı çıktısı saklanır out/ eşleştirme kaynak ağacının alt dizinine.

Birden çok depolama aygıtına sahip bazı makinelerde, kaynak dosyalar ve çıktılar ayrı birimlerde depolanırken derlemeler daha hızlıdır. Ek performans için çıktı, dosya sistemi bozulursa tüm dosyalar yeniden oluşturulabileceğinden, kilitlenme sağlamlığı yerine hız için optimize edilmiş bir dosya sisteminde saklanabilir.

Bunu ayarlamak aktarmak için OUT_DIR_COMMON_BASE çıktı dizinleri saklanacağı yere noktaya değişkeni.

export OUT_DIR_COMMON_BASE=<path-to-your-out-directory>

Her bir ayrı kaynak ağacı için çıktı dizini, kaynak ağacı tutan dizinden sonra adlandırılır. Örneğin, kaynak ağaçlar varsa /source/master1 ve /source/master2 ve eğer OUT_DIR_COMMON_BASE olarak ayarlanır /output , çıkış dizinleri vardır /output/master1 ve /output/master2 .

Aynı ada sahip dizinlerde depolanan birden fazla kaynak ağacına sahip olmaktan kaçının, çünkü kaynak ağaçlar tahmin edilemez sonuçlarla bir çıktı dizinini paylaşacaktır. Bu yalnızca dahil yüksek Jelly Bean (4.1) üzerinde desteklenir ve master dal.

Sonraki: Kaynağı indirin

Yapı ortamınız kullanıma hazır! Geçin kaynağı indirirken .