728x90

안드로이드 AOSP 빌드를 보다 간략하고 쉽게 따라할 수 있도록 작성해보았습니다.

빨간색 글자는 반드시 따라 안하셔도 되며, 안드로이드 장비에 맞게 설정하시길 바랍니다.

 

환경

Ubuntu 16.04 (권장)

 

필수 설치

$ sudo apt-get purge openjdk-* icedtea-* icedtea6-*
$ sudo apt-get update
$ sudo apt-cache search openjdk
$ sudo add-apt-repository ppa:openjdk-r/ppa
$ sudo apt-get install openjdk-8-jdk
$ sudo apt-get install bison g++-multilib git gperf libxml2-utils make zlib1g-dev:i386 zip liblz4-tool libncurses5 libssl-dev bc
$ 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 ccache libgl1-mesa-dev libxml2-utils xsltproc unzip libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-dev g++-multilib

 

이미지 생성

$ mkdir ~/bin

( bin 폴더는 자신이 원하는 곳에 해도 됩니다. )

$ PATH=~/bin:$PATH
$ curl http://commondatastorage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
$ chmod a+x ~/bin/repo

$ mkdir ~/android

( android 폴더는 자신이 원하는 곳에 해도 됩니다. )
$ cd ~/android
$ git config --global user.email "이메일(ex. admin@gmail.com)"
$ git config --global user.name "이름(ex. admin)"
$ repo init -u https://android.googlesource.com/platform/manifest -b android-10.0.0_r33

( 자신이 원하는 안드로이드 버전을 찾아 넣으면 됩니다. )

( 참고 : https://source.android.com/setup/start/build-numbers#source-code-tags-and-builds )
$ repo sync -j16
$ make -j16

( j 뒤에 숫자는 CPU를 보고 맞춥니다. ex. make -j2, make -j4, make -j8, make -j16, make -j32 )

$ . build/envsetup.sh
$ lunch

Nexus 빌드 네임

( 자신이 빌드하고자 하는 장비에 맞게 선택해주시면 됩니다. )

( ex. Nexus 5X인 경우 "aosp_bullhead_userdebug"으로 29번 선택 )
$ make -j16

 

이미지 주입

※ 생성된 이미지를 가져와 윈도우10에서 작업하였습니다.

※ 키 생성 과정이 생략되어 추후 작성하겠습니다.

 

- fastboot 모드 진입은 전원키+볼륨상+볼륨하를 꾸욱 눌려줍니다.

- 언락

$ fastboot oem unlock

- 빌드

$ set ANDROID_PRODUCT_OUT=이미지가 들어가있는 폴더

$ fastboot -w flashall

 

References

Building and flashing a secured AOSP build with verified boot and separate lockscreen password for the Nexus 5X
안드로이드 포팅 1-2 AOSP 빌드하기
안드로이드 에뮬레이터 환경에서 OS 이미지 적용을 위한 안드로이드 OS 풀 소스 빌드 방법
안드로이드 스튜디오의 에뮬레이터 설치 및 사용 방법

'STUDY > Android' 카테고리의 다른 글

Samsung Firmware Reference  (0) 2021.02.02
scrcpy 명령어  (0) 2021.01.05
Android Network Capture with ADB  (0) 2020.05.25
Android AOSP Build  (0) 2019.12.19
JLang Build  (0) 2019.12.02
VMware에서 Android X86 설치  (2) 2019.11.23