LineaseOS 14.1 (Android 7.1.2) 버전을 설치한 후에 자꾸 Android 10 버전으로 올리고 싶은 욕심이 생긴다.
구글링 하여도 이미 빌드한 파일은 찾을 수 없어 셀프 빌드해보고자 준비한다.
- 장치명: 갤럭시 노트 10.1 2014
- 모델명: SM-P600
- WiFi 전용 모델의 코드명: n1awifi
- 참고 LTE 모델의 코드명: lt03lte
- CPU(Cortex-A15): 32-bit ARM
기본적으로 LineageOS 사이트를 참고로 한다. LineageOS를 어떻게 빌드하여 설치할 수 있는지 가이드를 확인할 수 있다.
빌드는 Ubuntu 20.04에서 진행한다.
android sdk platform tools 다운로드 하여 필요하다면 adb와 fastbook 명령을 준비한다. 다운로드한 파일을 압축을 풀고 PATH에 추가한다.
~/.profile
파일을 편집하여 PATH에 추가한다.
1
2
3
4
5
6
7
8
$ unzip platform-tools_r30.0.1-linux.zip
$ vi ~/.profile
# android platform tools
if [ -d "$HOME/dev/platform-tools" ] ; then
PATH="$HOME/dev/platform-tools:$PATH"
fi
$ source ~/.profile
LineageOS를 설치하기 위한 패키지들을 설치한다.
1
2
3
$ sudo apt install bc bison build-essential ccache curl flex g++-multilib gcc-multilib git gnupg gperf imagemagick lib32ncurses5-dev lib32readline-dev lib32z1-dev liblz4-tool libncurses5 libncurses5-dev libsdl1.2-dev libssl-dev libxml2 libxml2-utils lzop pngcrush rsync schedtool squashfs-tools xsltproc zip zlib1g-dev
$ sudo apt update
$ sudo apt upgrade
LineageOS 빌드용 디렉토리를 만들고 repo
툴을 다운받는다.
1
2
3
4
5
6
7
8
9
10
11
$ cd ~/dev
$ mkdir bin
$ mkdir lineage
$ cd bin
$ curl https://storage.googleapis.com/git-repo-downloads/repo > ~/dev/bin/repo
$ ls
repo
$ chmod +x repo
$ ls -lt
total 40
-rwxrwxr-x 1 appaga appaga 38761 5월 24 17:06 repo
repo
파일이 저장된 폴더도 PATH에 추가한다.
1
2
3
4
5
6
7
$ vi ~/.profile
# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/dev/bin" ] ; then
PATH="$HOME/dev/bin:$PATH"
fi
$ source ~/.profile
repo
명령을 실행하여 usr/bin/env: ‘python’: No such file or directory
을 찾을 수 없다는 오류가 표시되면 python3
를 python
으로 심볼릭 링크해주면 된다.
1
$ sudo ln -s /usr/bin/python3 /usr/bin/python
repo
명령으로 LineageOS 소스 repository를 초기화 한다.
1
2
3
4
5
$ cd ~/dev/lineage
$ repo init -u https://github.com/LineageOS/android.git -b cm-14.1
repo has been initialized in /home/appaga/dev/lineage
$ repo sync
repo sync
명령은 인터넷으로 많은 소스 파일들을 다운받기 때문에 수 시간 이상 소요되며 소스 용량도 수 십 기가 정도다.