Hur Man Bygger Någon Anpassad Rom För Din Android-Telefon! Kompilera Rom från källa utan PC [2021]

Hej, killar om du är här betyder det att du vill lära dig att bygga någon anpassad Rom för din Android-telefon eller kompilera Rom från källan. Så fint är jag tillbaka med en bra guide för alla. I den guiden kommer jag att lära dig hur du kan bygga någon anpassad Rom för din Android-telefon utan pc. Ja, du kan bygga utan pc. Vi kommer att använda vår stora smartphone för att bygga någon anpassad Rom för din Android-telefon. Så killar om du vill kompilera Rom från källan måste du följa steg för steg guide. Så utan att slösa tid låt oss komma igång.

Vad är en Android anpassad ROM:

Android ROM är till en telefons firmware, baserad på Googles Android-plattform. Android är öppen källkod och det är därför som alla utvecklare kan redigera källkoden, kompilera om den och släppa om för en mängd olika enheter. Användare kan installera ROM-skivor för att ändra enhetens utseende och beteende. Alla anpassade ROM-skivor är utvecklade av Android-communityn, mestadels en grupp kärnutvecklare som gör detta rent av en passion för modding. Det betyder att de flesta är helt gratis. Anpassade ROM är tillgängliga för Android-telefoner, tabletter, mediaspelare, smartwatches och nästan alla typer av enheter som kör Android.

när du köper din Android-telefon kommer den med en ”stock ROM” eller ”stock firmware”. Detta är den förinstallerade versionen av operativsystemet. Denna ROM har begränsad funktionalitet enligt definitionen av telefonens tillverkare. Genom att blinka en anpassad ROM kan du låsa upp extra funktionalitet och ibland förbättra prestanda.

kompilera Rom från källa utan PC
kompilera Rom från källa utan PC

krav för att kompilera Rom från källa utan PC:

vi arbetar på vår Android-enhet, så du måste fylla i alla krav.

(1) Ubuntu 16.04 Server (VM):

du behöver Ubuntu 16.04 Server för att bygga anpassade ROM-skivor. Eftersom jag använder Ubuntu 16.04 Server varje gång. Du kommer att få servrar från AWS, Google cloud platform, Microsoft Azure, många fler webbplatser som tillhandahåller servrar. Jag rekommenderar dig att använda AWS eller Google cloud-plattformar. De ger gratis försök. Du måste registrera dig på den webbplatsen och nu är du Rady för att starta din server. För mer info, Google det.

för din Ubuntu 16.04-Server behöver du det :

RAM 4GB eller högre.
Lagring: 200GB?+

(2) bekant med GitHub och Linux kommandon:

du behöver lite kunskap om Github och Linux kommando. Om du inte vet att då font bekymmer Jag kommer att lära dig några grunderna i den artikeln. Men om du vill lära dig som ett proffs så bara Google det.

(3) krävs någon android-telefon :

du kan använda en android-telefon för att sammanställa en ROM.

(4) enhetskällor behövs :

varje anpassad ROM eller någon lager ROM bygga från enhetens källor. Vi kommer inte att prata om djupt. Bara du behöver veta om enhetskällor. I den enheten Källor, 3 träd krävs.

enhetskällor:

enhetsträd.
kärnträd.
leverantörsträd.
vanligt träd (inte för varje enhet)

ovanstående träd krävs för att bygga anpassade ROM-skivor. Varje enhet har sina specifika enhetskällor.

(5) Rom källa :

det finns massor av anpassade ROM tillgängliga på internet. Som lineage os, AOSP extended, pixel experience, dot os, aokp, superior os, Syberia project etc. Välj valfri rom och hämta källan från GitHub.

(6) Ladda ner :

JuiceSSH – SSH klient App. Denna app hjälper dig att ansluta din server via SSH på Android.

Hur Man Bygger Någon Anpassad Rom För Din Android-Telefon! Kompilera Rom från källa utan PC

slutligen, killar, vi kommer att kompilera rom från källan. Vi kommer att sammanställa lineage os från källan för vår enhet. Jag använder min xiaomi mi Max 2-telefon för att bygga lineage os pie rom från källan. Så alla steg är lika för varje enhet. så utan att slösa tid låt oss komma igång.

(1) Skapa Ubuntu 16.04 server på AWS (Amazon Web Service):

skapa bara ett konto på Amazon Web Services (AWS). Efter aktivering är du redo att starta en instans. Gå först till din AWS-instrumentpanel. Gå till tjänster / EC2 / starta instans / välj Ubuntu 16.04 LTS. Därefter klickar du på 8cpu 32GB RAM-instans. Klicka på Nästa: konfigurera Instansdetaljer. Nu behöver du inte ställa in någonting. Klicka bara på Nästa: Lägg till lagring. Här ser du Storlek (GB). 8 GB är som standard. Så du måste ändra det med 200 GB. Klicka bara på Nästa: Lägg till taggar. Lägg till någon tagg om du vill. Därefter klickar du på Nästa: konfigurera säkerhetsgrupp. Du kommer att få SSH-grupp så bara ändra källfliken anpassad till var som helst. Klicka nu på granska och starta. Nu måste du klicka på startknappen. Det kommer att be dig om ett nyckelpar. Om du gör alla dessa saker så bara skapa ett nytt nyckelpar. Glöm inte att ladda ner det nyckelparet på din dator eller telefon. Mitt nyckelpar heter Roshan.pem. Efter att ha startat en instans får du din offentliga Ip på dashboard /services /EC2 / instance. kopiera din offentliga IP-adress.

(2) Anslut Ubuntu 16.04 server via SSH på Android :

du måste installera JuiceSSH – SSH Client app från ovanstående länk eller från Google play store.

du behöver 3 Saker att ansluta.

  • offentlig IP-adress.
  • Keypair.
  • användarnamn: ubuntu.

öppna JuiceSSH – SSH klient App på Android. Gå till anslutningar. Klicka på plus-ikonen för att skapa en ny anslutning. Ställ in det som bellow:

Smeknamn: någon
Yupe: SSH
adress: sätt din offentliga Ip

identitet: Lägg till ny.

i identitetsfyllning som nedan:

Smeknamn: alla
användarnamn: ubuntu
privat nyckel: Välj ditt nyckelpar.

spara den. Klar nu är din instans ansluten på din Android-telefon. Öppna nu din Ubuntu 16.04-server från anslutningsfliken. Det kommer att öppna en terminal. Klar din instans är klar att använda.

skapa Server & Anslut med SSH Video Tutorial (Hindi).

(3) Ställa in byggmiljö för kompilering av ROM :

du måste installera några paket för att bygga en anpassad ROM. Så du måste kopiera och klistra in kommandona en efter en och trycka på enter. # linjer är en förklaring av kommandon så kopiera inte # linjer

# få superanvändaråtkomst.

sudo su

# installera JDK (tryck på enter 2 gånger).

add-apt-repository ppa:openjdk-r/ppa

# uppdatera alla paket.

apt-get update

# installera fler paket.

apt-get install bison build-essential curl ccache flex lib32ncurses5-dev lib32z1-dev libesd0-dev libncurses5-dev libsdl1.2-dev libxml2 libxml2-utils lzop pngcrush schedtool squashfs-tools xsltproc zip zlib1g-dev git-core make phablet-tools gperf openjdk-8-jdk -y

# become a normal user.

exit

# creating a bin folder.

mkdir ~/bin

PATH=~/bin:$ Sökväg

cd ~ / bin

curl http://commondatastorage.googleapis.com/git-repo-downloads/repo > ~ / bin / repo

chmod a + x ~ / bin / repo

git klon https://github.com/akhilnarang/scripts.git skript

cd-skript

bash setup/android_build_env.sh

klar nu är din instans redo för kompilera Rom från källan. Vi kommer att sammanställa lineage os 16.0 pie rom för min Xiaomi Mi Max 2 (syre).

ställa in bygga miljö Video Tutorial Del 2 (Hindi).

(4) Skapa ett Github-konto :

Killar om du vill kompilera Rom från källan utan PC måste du få mer information om Github. Du kan få informationen från Google. Men du måste ha ett konto på GitHub. Så gå till github.com och skapa ditt nya konto. Om du redan har ett konto, använd det gamla. Vi krävde din Github: användarnamn och e-postadress för ett brev användning.

(5) klon eller ladda ner ROM-källa :

nu ska vi äntligen ladda ner en lineage os 16.0 ROM-källa i vår server. Du kan använda din favorit Rom-källa om du vill. För att ladda ner källa följer du först dessa steg och kopierar och klistrar in bälgkommandon i din server:

# skapa en Rom-mapp.

mkdir rumsnamn

(som jag skapar en linage-mapp, så mitt kommando är mkdir lineage)

# gå till Rom-mappen.

cd lineage

(ersätt lineage med ditt mappnamn).

# Anslut ditt Github-konto.

git config –global användare.e-post” e-post ”&& git config-global user.name ”användarnamn”

(ta bort e-post och sätta din e-post. Ta bort användarnamn och sätt ditt användarnamn.) så här:

git config –global användare.e-post ”” && git config-global användare.namn ”MaheshTechnicals”

du måste förstå några Github-kommandon.

git clone – git clone Command användning för att ladda ner förråd från GitHub.

branch (-b) – brach definieras för vilken brach du vill använda. Som pie brach, oreo brach, Android Q brach etc.

# för att initiera lineage os 16.0 källa.

repo init-u git://github.com/LineageOS/android.git-b lineage-16.0

# för att synkronisera eller ladda ner källa.

repo sync

efter repo sync tar det mycket tid att ladda ner din källa. Eftersom källor är stora i storlek som 30-40 GB. Så vänta tills det slutar ladda ner.

hämta Rom källa handledning del 3 (Hindi).

(6) Vad är Enhetskällor:

efter nedladdning av Rom-källan. Nu behöver du veta enhetens kodnamn från Google. Om du inte vet hur du kontrollerar kodnamnet på din enhet. Bara google det som kodnamn på ditt enhetsnamn. Gilla kodnamnet på xiaomi MI Max 2. Så i mitt fall är mitt xiaomi MI Max 2-enhetskod namn syre. Kodnamnet behövs killar. Nu måste vi klona Enhetskällor. Som kärnträd, enhetsträd, leverantörsträd. Du kan hitta dina enhetskällor från xda eller GitHub. Så hitta dina höga träd först. Om din telefon har någon anpassad rom tillgänglig, gå till den xda-posten. Där får du dina enhetskällor på fliken källor.
du kan också söka i enhetens källor i Github-sökfältet. Som jag vill ha enhetsträd för min xiaomi Mi Max 2 syre. Så jag ska söka så här:

för enhetsträdet:

device_xiaomi_oxygen

för kärnträd :

Kernel_xiaomi_oxygen

eller

Kernel_xiaomi_msm8953

(msm8953 är min enhet chipset. Så du kan vara annorlunda. Så google det din enhet chipset).

för Leverantörsträd:

Vendor_xiaomi

eller

Vendor_xiaomi_oxygen (ibland).

för vanligt träd :

device_xiaomi_msm8953-vanligt

om det här trädet är tillgängligt för din enhet. Då måste du också använda detta träd. Så frågan är hur vi vet att ett gemensamt träd är tillgängligt för min enhet eller inte?. Så enkelt är det att gå till ditt enhetsträd / rom.beroenden fil. Öppna filen. Om du kommer att se ett gemensamt träd i den filen. Så du måste klona det trädet också. Om inte, Lev det.

jag hoppas att du hittar dina enhetskällor för din enhet. Nu ska vi klona våra enhetskällor så. Format för att klona träd:

git clone URL-b BRANCH PATH

URL: sätt din källadress.

BRANCH: Välj ditt grennamn från träd.

sökväg: whare du klona dina källor i din server.

(7) klona dina enhetskällor:

nu ska jag klona mina källor nu. Så om du bygger samma enhet som xiaomi Mi Max 2 kan du använda dessa kommandon utan att ändra någonting. Om du använder en annan enhet använder du enhetens källadress, filial och sökväg.

# se till att du är i Rom-mappen (i mitt fall är det lineage). Om du inte är i Rom-mappen går du med cd-kommandot.

cd härstamning

# enhet träd.

git clone https://github.com/MaheshTechnicals/android_device_xiaomi_oxygen.git- B pixel device/xiaomi/oxygen

ibland är det enligt ditt träd.

git klon https://github.com/MaheshTechnicals/android_device_xiaomi_oxygen.git- B pixel enhet/xiaomi

# Kernel träd.

git klon https://github.com/MaheshTechnicals/Kernel_xiaomi_oxygen- b härstamning-16 kärna/xiaomi/MSM8953

# leverantör träd.

git clone https://github.com/MaheshTechnicals/android_vendor_oxygen- b lineage vendor/xiaomi

ibland är det enligt ditt träd.

git klon https://github.com/MaheshTechnicals/android_vendor_oxygen- b härstamning leverantör/xiaomi/syre

# vanligt träd.

git klon https://github.com/rakeshraimca/android_device_msm8953-common- B förödelse-ny enhet/xiaomi/MSM8953-gemensam

klar. Nu är du alla enhetskällor är klonade. Nu går vi vidare till nästa steg.

hämta Enhetskällor Video Tutorial Del 4 (Hindi).

(8) Rom ta upp eller fixa Enhetsträd :

Guy ’ s Rom + Enhetskällor klonas framgångsrikt. Men nu ska vi göra Rom bringup. I enkla ord kommer du att ansluta dina enhetskällor med ROM-källa. För det måste du ändra vissa filer i ditt Enhetsträd. Så gå först till ditt enhetsträd med ett kommando från Rom-mappen.

# går till mappen enhetsträd.

cd-enhet / xiaomi / syre

# vilken fil och mappar vi har.

ls

du kommer att se massor av filer och mappar. Men vi behöver bara ändra fem filer. Så vilka filer behöver vi ändra? listas här :

rom. beroenden
rom_oxygen.mk
vendorsetup.sh
AndroidProducts.mk

# låt oss börja med en första fil. Du måste byta namn på rom.beroenden fil till ditt rumsnamn.beroendena. vi kommer att använda MV-kommandot för att byta namn på filer och mappar. I mitt fall bygger jag lineage os så kommandot är.

MV rom.beroenden härstamning.beroenden

# rom_oxygen.mk Byt namn enligt din ROM.

mv rom_oxygen.mk lineage_oxygen.mk

enligt Rom kommer det att förändras som i pixel experience Rom kommer det att byta namn som aosp_oxygen.mk

du kan hänvisa detta från officiella enhetskällor för en annan enhet. Som om du vill veta lineage os device tree modification, sök sedan i Google som lineage device git. Och hänvisa till alla enhetsträd.

# skapa eller ändra vendorsetup.sh fil.

nano vendorsetup.sh

# det öppnar den filen. Rensa alla rader om du har och Lägg till några rader från nedan:

add_lunch_combo rom_codename-userdebug

ersätt Rom med lineage (enligt ditt Rom-namn). Ersätt kodnamn med enhetens kodnamn. Som i mitt fall är mitt kommando

add_lunch_combo lineage_oxygen-userdebug

# spara vendorsetup.sh fil. Du måste trycka på:

CNTRL + O
ange
CNTRL + X

# AndroidProducts.mk. vi måste öppna den här filen.

nano AndroidProducts.mk

# ersätt med ditt Rom-namn och enhetens kodnamn så här:

PRODUCT_MAKEFILES : = \
$(LOCAL_DIR)/lineage_oxygen.mk

# spara AndroidProducts.mk fil.

CNTRL + O
ange
CNTRL + X

# nu måste vi ändra några rader i lineage.mk fil. öppna lineage.mk fil.

mano lineage_oxygen.mk

# ersätt med Rom config-fil och Rom-namn så här :

$(Ring inherit-product, vendor/lineage/config/common_full_phone.mk)

# ändra Rom-namn i den raden.

Produktnamn: = lineage_oxygen

# spara lineage.mk fil.

CNTRL+O
ange
CNTRL+X

klar ditt enhetsträd är nu fixat. Så nu är ditt enhetsträd korrekt anslutet till din Rom-källa. Nu är du redo att bygga din första Rom.

fixa din enhet träd video Tutorial Del 5 (Hindi).

(9) Bygg eller kompilera din ROM :

efter alla dessa steg är du redo att kompilera Rom från källan utan PC. Så, killar, låt oss börja bygga eller starta en sammanställning av din Rom. Följ bara kommandona.

# gå först till Rom-mappen för det.

cd

cd härstamning

# kör bygga skript.

. build/envsetup.sh

# kör cachar.

export USE_CCACHE=1&& ccache-M 50G&& export CONFIG_STATE_NOTIFIER=y&& export SELINUX_IGNORE_NEVERALLOWS=true

# lunch enheten. Med enhetens kodnamn så här.

lunch lineage_oxygen-userdebug

# Brunch enheten. Och sätta enheten kodnamn gruvan är syre så.

brunch syre

eller

gör bacon

det kommer att börja sammanställa en Rom för din enhet. Det tar 2-3 timmar (det beror helt på dina servrar CPU och RAM) för att bygga Rom så vänta tills 100%.

kompilera din Rom handledning del 6 (Hindi).

(10) få fel! Hur fixar du dessa fel:

om din Rom-byggnad slutar med att få några fel? Så du måste fixa de felen först och sedan kompilera igen. Om du får något fel. Sedan cuppy att vissa fel linjer och söka på Google för att fixa. Då kommer det att fixa. Eftersom mestadels alla fel och lösningar du kommer att få från Google. Efter fixering och fel måste du följa för att börja bygga igen.

om du verkligen söker på Google men inte får några lösningar. Då kommer jag att ge dig några telegramgrupper. Ställ dina frågor där. De kommer definitivt att hjälpa dig.

Android Utveckling Telegram Grupper :

Android ROM utveckling

Android bygga hjälp

Mahesh Technicals min grupp.

# gå först till Rom-mappen för det.

cd

cd härstamning

# kör bygga skript.

. build/envsetup.sh

# kör cachar.

export USE_CCACHE=1&& ccache-M 50G&& export CONFIG_STATE_NOTIFIER=y&& export SELINUX_IGNORE_NEVERALLOWS=true

# lunch enheten. Med enhetens kodnamn så här.

lunch lineage_oxygen-userdebug

# Brunch enheten. Och sätta enheten kodnamn gruvan är syre så.

brunch syre

eller

gör bacon

Ladda upp ROM på din Google Drive:

efter kompilering framgångsrikt. Du måste överföra din ROM zip-fil till ditt Google Drive-konto. För det behöver du ett Gmail-konto. Jag tror inte det om någon inte har det i den här världen. Men om du inte har det sedan skapa det från Google drive webbplats.

OK så nu är vi redo att ladda upp vår första lineage os Rom på ditt google drive-konto. Så följ kommandona.

# gå till hemkatalogen.

cd

# inställning Google Drive.

wget https://docs.google.com/uc?id=0B3X9GlR6EmbnWksyTEtCM0VfaFE&export=download

# Byt namn till gdrive.

mv uc\?id\ = 0B3X9GlR6EmbnWksyTEtCM0VfaFE gdrive

# ange behörigheter.

chmod +x gdrive

# installera enhet paket.

sudo installera gdrive /usr/local/bin/gdrive

# hämta en länk.

GDrive list

efter det kommandot får du en autentiseringslänk i din terminal. Så kopiera den länken och klistra in i vilken webbläsare som helst. Jag kommer att klistra in den länken i min chrome-webbläsare. De kommer att be dig att ansluta ditt Google-konto där. Så klicka bara på ditt Google-konto. Sedan ger de dig en verifieringskod kopiera den koden och klistra in den i din terminal och tryck sedan på enter.

klar. Nu är ditt Google drive-konto anslutet till din Ubuntu-server. Nu ska vi ladda upp vår Rom-fil.

# gå till din ROM zip-fil. Ersätt med ditt kodnamn.

cd lineage/out/target/product/oxygen

ls

# hitta ditt Rom-filnamn. ladda upp din ROM zip-fil till drive. Byt Ut Rom.zip till ditt Rom-filnamn.

GDrive ladda upp Rom.zip

klar nu laddas din ROM zip-fil upp på din Google Drive. Så gå nu till ditt Google Drive-konto eller Google drive-appen. Logga in med samma e-post-ID som du använde för att ansluta enheten i en terminal. Så ladda ner från det och testa din Rom-fil.

Ladda upp din ROM på Android File Host (AFH) Server Via Terminal:

Killar om du är en utvecklare så ska du ha kunskap om AFH. Android File Host tillhandahåller molnlagring för dina projekt och andra saker. Så om du vill ladda upp och dela dina projekt med andra kan du använda den tjänsten gratis. Fint har vi vår anpassade Rom Rady att dela med dina vänner. Så nu ska vi ladda upp vår ROM-fil till AFH-servern via terminal. Låt oss börja.

(1) Skapa först ett konto på androidfilehost.com.

(2) begär dem nu via e-post för utvecklaråtkomst. De kommer att informera dig via e-post.

(3) Om du får ditt utvecklarkonto. Nu behöver vi FTP-åtkomst. Bara igen kontakta dem via e-post och Begäran om FTP-åtkomst. Det tar 2-3 dagar.

(4) efter 2-3 dagar kommer de att informera dig. De skickar dina FTP-detaljer som:

en FTP-server: uploads.androidfilehost.com

FTP-användarnamn: xxx

FTP-lösenord: xxx

FTP-port: 21

SFTP-port: 23

spara den informationen.

(5) Gå först till den katalogen där din Rom-fil finns. Mestadels är i ut / mål/produkt / syre. Nu är vi redo att ladda upp filer på AFH med en terminal via FTP. Du behöver ett kommando för det. Se kommandot nedan:

curl –ftp-pasv-t filnamn ftp://USERNAME:

OBS: Du måste ersätta vissa rader enligt dina uppgifter som exempel

filnamn: Namn på din Rom-fil (AospExtended-v6. 7-oxygen-20191206-1340-inofficiellt.zip)

användarnamn: sätt ditt FTP-användarnamn här.

PASS: Sätt ditt FTP-lösenord.

(6) efter ändring av ovanstående kommando enligt dina uppgifter. Tryck bara på enter. Din Rom kommer att börja ladda upp på AFH. Det tar 1-2 minuter att slutföra.

(7) Gå nu till ditt AFH-konto. importera din uppladdade fil från FTP-sektionen. Klar nu är din Rom-fil på AFH. Dela din ROM-fil med din enhetsgemenskap eller på xda.

Uppdatera Python-Versionen :

många människor står inför problem när de försöker bygga Rom. Vilket är python 3 stöds inte längre. Så låt oss uppdatera det.

(1) Först måste du installera python ppa.

$ sudo add-apt-repository ppa:deadsnakes/ppa

(2) Nu är nästa steg att uppdatera alla paket.

$ sudo apt-get update

(3) nu kan uppgradera python 2 till 3. Innan du installerar 3.7 måste vi installera python 3.6 genom att köra följande kommandon.

$ sudo apt-get install python3.6
$ sudo apt-get install python3.7

(4) Nu kan installera pip genom att köra följande kommando.

$ sudo apt install python3-pip

(5) Ställ in prioritet till python.

$ sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.6 1

$ sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.7 2

Lämna ett svar

Din e-postadress kommer inte publiceras.