Så det vi egentlig skal gjøre er å sette opp et Windows Subsystem for Linux (WSL) for byggemiljøet vårt. Dette er utrolig enkelt, men ofte oversett, da det meste vi trenger er tilgjengelig i Microsoft Store.
Ditt første trinn er å åpne Microsoft Store, og søke etter Ubuntu 18.04 og installere appen.
Deretter åpner du Ubuntu 18.04-appen og går gjennom den første installasjonsveiviseren.
Åpne nå Ubuntu-terminalen og installer følgende pakker:
sudo apt installere android-sdk-plattform-verktøy bc build-essential ccache curl g ++ - multilib gcc-multilib git gnupg gperf imagemagick lib32ncurses5-dev lib32readline-dev lib32z1-dev liblz4-tool libncurses5-dev libsdl1.2-dev libssl-dev libx .0-dev libxml2 libxml2-utils lzop m4 openjdk-8-jdk pngcrush repo rsync schedtool squashfs-tools xsltproc zip zlib1g-dev
Deretter må du opprette en ny katalog for kildekoden og navigere til den:
mkdir -p ~ / android / lineage && cd android / lineage
Nå vil vi starte LineageOS-kilden repo:
repo init -u https://github.com/LineageOS/android.git -b lineage-15.1
Legg til denne biten av kode i .repo / local_manifests / roomservice.xml (hvis denne filen ikke eksisterer, kan du ganske enkelt opprette den)
Og vi laster ned kildekoden:
reposynkronisering
Nå er dette bare valgfritt, men det anbefales å slå på hurtigbufring for å øke hastigheten på byggingen din - vi gjør dette gjennom 'ccache'.
Du vil i utgangspunktet legge til følgende linje i ~ / .bashrc-filen:
Eksporter USE_CCACHE = 1
Og spesifiser deretter maksimal mengde diskplass du vil at ccache skal dra nytte av:
Cache-M 50G
Bytt ut '50G' i den linjen etter dine preferanser - den tilsvarer mengden hurtigbuffer du tildeler i gigabyte. Hvis du bygger for bare én enhet, kan du bruke mellom 25G - 50G, men hvis du bygger for flere enheter det ikke del den samme kjernekilden bør du støte den opp til rundt 75 - 100G. I begge tilfeller vil bruk av ccache barbere en betydelig tid av byggene dine.
Deretter bør du velge følgende forpliktelse:
source build / envsetup.sh && repopick -t wsl-compile
Deretter vil du forberede den enhetsspesifikke koden:
frokost enhetens kodenavn
Lag 64-biters bison og ijar:
lage bison && lage ijar
Sett BISON_EXEC til å kjøre 64-biters versjonen av bison, og sett IJAR_EXEC til å kjøre den tilpassede ijar:
eksporter BISON_EXEC = ~ / android / lineage / out / host / linux-x86 / bin / bison eksport IJAR_EXEC = ~ / android / lineage / out / host / linux-x86 / bin / ijar
(legg til kommandoene til ~ / .bashrc hvis du ikke vil måtte utføre den hver gang du åpner en kommandolinje på nytt)
Og nå kan du starte byggingen!
brunsj enhetens kodenavn
For å bygge i fremtiden, trenger du bare å gjenta trinnene for å legge til .repo / local_manifests, aktivere ccache og sette BISON_EXEC og tilpasset IJAR.
Du må også lage bison && make ijar hver gang du skyller katalogen.
Noen endelige notater:
- Ikke legge til / redigere Linux-filene dine fra Windows, vil filene mest sannsynlig bli ødelagt i bash. Gjør det i Linux-delsystemet.
- Ikke bruk mnt for å laste ned kildekoden til andre stasjoner, og følg deretter denne veiledningen. Du bør laste ned kildekoden til mapper bare innenfor Linux-delsystemet!