Articles

Building Environment

tässä osiossa kuvataan, miten paikallinen työympäristö luodaan Android-lähdekooditiedostojen rakentamiseksi. Sinun on käytettävä Linuxia tai macOS: ia; Windows-rakentamista ei tällä hetkellä tueta.

yleiskatsaus koko koodin tarkistamiseen ja päivittämiseen on ohjeaiheessa laastarin elämä.

haaran valitseminen

jotkin rakennusympäristön vaatimukset määräytyvät sen lähdekoodin version mukaan, jonka aiot koota. Täydellinen luettelo käytettävissä olevista haaroista on ohjeaiheessa Rakennusnumerot. Voit myös ladata ja rakentaa uusimman lähdekoodin (nimeltään master), jolloin jätät haaramäärityksen pois alustaessasi arkiston.

kun olet valinnut haaran, määritä rakennusympäristösi alla olevien ohjeiden mukaisesti.

Linux-rakennetun ympäristön perustaminen

nämä ohjeet koskevat kaikkia haaroja, mukaan lukien master.

Android-rakennetta testataan rutiininomaisesti Housessa Ubuntu LTS (14.04) – ja Debian-testauksessa. Useimmissa muissa jakeluissa pitäisi olla tarvittavat rakentamistyökalut käytettävissä.

piparkakkujen (2.3.x) ja uudemmat versiot, mukaan lukien master haara, vaaditaan 64-bittinen ympäristö. Vanhemmat versiot voidaan kääntää 32-bittisille järjestelmille.

tarvittavien pakettien asentaminen(Ubuntu 18.04)

tarvitset Ubuntusta 64-bittisen version.

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

tarvittavien pakettien asentaminen(Ubuntu 14.04)

tarvitset 64-bittisen version Ubuntusta (suositellaan 14.04).

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

tarvittavien pakettien asentaminen (Ubuntu 12.04)

voit käyttää Ubuntu 12.04: ää vanhempien Android-versioiden rakentamiseen. Versiota 12.04 ei tueta master tai viimeaikaisia julkaisuja.

tarvittavien pakettien asentaminen (Ubuntu 10.04-11.10)

Ubuntu 10.04-11.10: n rakentaminen ei ole enää tuettua, mutta se voi olla hyödyllinen AOSP: n vanhempien julkaisujen rakentamisessa.

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:

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

Ubuntu 11.10:

sudo apt-get install libx11-dev:i386

USB-yhteyden määrittäminen

Asenna yhteisön ylläpitämä oletusjoukko udev säännöt kaikille Android-laitteille noudattamalla ohjeita Laitteen asettamisesta kehitystyötä varten.

käyttämällä erillistä lähdekansiota

oletuksena kunkin lähdekansion tuotos tallennetaan vastaavan lähdepuun alikansioon out/.

joissakin koneissa, joissa on useita tallennuslaitteita, käännökset ovat nopeampia tallennettaessa lähdetiedostoja ja ulostuloa erillisille taltioille. Lisätehoa, lähtö voidaan tallentaa tiedostojärjestelmän optimoitu nopeus sijaan kaatumisen kestävyys, koska kaikki tiedostot voidaan uudistaa, jos tiedostojärjestelmä on vioittunut.

voit määrittää tämän viemällä OUT_DIR_COMMON_BASE muuttujan osoittamaan paikkaan, johon tulostehakemistosi tallennetaan.

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

kunkin erillisen lähdepuun lähdehakemisto on nimetty lähdepuuta pitävän hakemiston mukaan. Esimerkiksi jos on lähdehakemistoja /source/master1 ja /source/master2 ja jos OUT_DIR_COMMON_BASE on asetettu /output, lähtöhakemistot ovat /output/master1 ja /output/master2.

Vältä useiden lähdepuiden tallentamista samannimisiin hakemistoihin, koska lähdepuut päätyisivät jakamaan lähdehakemiston arvaamattomin tuloksin. Tätä tukee vain Jelly Bean (4.1) ja uudempi, mukaan lukien master haara.

macOS build environment

oletusasennuksessa macOS toimii kirjainkokoisella, mutta kirjainherkkä tiedostojärjestelmä. Tämän tyyppinen tiedostojärjestelmä ei ole GIT: n tukema ja aiheuttaa sen, että jotkin git-komennot (kuten git status) käyttäytyvät epänormaalisti. Tämän vuoksi suosittelemme, että työskentelet aina AOSP-lähdetiedostojen kanssa kirjainkokoisessa tiedostojärjestelmässä. Tämä voidaan tehdä melko helposti käyttämällä levykuvaa, jäljempänä.

kun oikea tiedostojärjestelmä on käytettävissä, master haaran rakentaminen nykyaikaisessa macOS-ympäristössä on yksinkertaista. Aikaisemmat haarat vaativat joitakin lisätyökaluja ja SDK: ta.

luodaan kirjainherkkä levykuva

voit luoda kirjainherkkä tiedostojärjestelmä olemassa olevaan macOS-ympäristöön levykuvan avulla. Voit luoda kuvan käynnistämällä Levyapuohjelman ja valitsemalla uuden levykuvan. Koko 250 GB on minimi loppuun rakentaa; enemmän tilaa on parasta tulevaa kasvua. Harvojen kuvien käyttö säästää tilaa ja mahdollistaa kasvun tarpeen mukaan. Valitse kirjainkoko, joka on tallennettu taltiomuotona.

tiedostojärjestelmän voi luoda myös komentotulkilta seuraavalla komennolla:

hdiutil create -type SPARSE -fs 'Case-sensitive Journaled HFS+' -size 250g ~/android.dmg.sparseimage

Tämä Luo .dmg.sparseimage tiedoston, joka asennettuna toimii Android-kehitykseen vaadittavalla muotoilulla varustettuna asemana.

Jos tarvitset myöhemmin suuremman äänenvoimakkuuden, voit muuttaa harvaan levykuvan kokoa seuraavalla komennolla:

hdiutil resize -size <new-size-you-want>g ~/android.dmg.sparseimage

levykuvalle, jonka nimi on android.dmg.sparseimage, voit lisätä helper-toimintoja ~/.bash_profile:

  • kuvan asentaminen suoritettaessa mountAndroid
    # mount the android file imagemountAndroid() { hdiutil attach ~/android.dmg.sparseimage -mountpoint /Volumes/android; }
  • kuvan irrottaminen suoritettaessa umountAndroid
    # unmount the android file imageumountAndroid() { hdiutil detach /Volumes/android; }
  • /ul>

    kun olet asentanut android volume, teet kaikki työsi siellä. Voit poistaa sen (irrottaa sen) aivan kuten ulkoisen aseman.

    Xcode-ja muiden pakettien asentaminen

  1. Asenna Xcode-komentorivityökalut:
    xcode-select --install

    vanhemmissa macOS-versioissa (10.8 tai alempi) Xcode on asennettava Applen kehittäjäsivustolta. Jos et ole rekisteröitynyt Applen kehittäjäksi, sinun on luotava Apple ID ladattavaksi.

  2. Asenna joko MacPorts tai Homebrew paketinhallintaa varten.
  3. varmista, että liittyvä hakemisto on polkusi sisällä ~/.bash_profile tiedosto:
    1. MacPorts – /opt/local/bin täytyy näkyä ennen /usr/bin
      export PATH=/opt/local/bin:$PATH
    2. homebrew – /usr/local/bin
      export PATH=/usr/local/bin:$PATH
  4. macports, Issue:
    POSIXLY_CORRECT=1 sudo port install git gnupg
  5. homebrew, Issue:
    brew install git gnupg2

asetettaessa tiedostokuvausrajaa

macOS-käyttöjärjestelmässä samanaikaisten avoimien tiedostokuvausten oletusraja on liian alhainen ja hyvin rinnakkainen rakentamisprosessi voi ylittää tämän rajan. Koron nostamiseksi ~/.bash_profile:

# set the number of open files to be 1024ulimit -S -n 1024

Vastaa

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *