Posts 갤럭시 노트 10.1 2014 (SM-P600) LineaseOS 셀프 빌드 설치
Post
Cancel

갤럭시 노트 10.1 2014 (SM-P600) LineaseOS 셀프 빌드 설치

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을 찾을 수 없다는 오류가 표시되면 python3python으로 심볼릭 링크해주면 된다.

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 명령은 인터넷으로 많은 소스 파일들을 다운받기 때문에 수 시간 이상 소요되며 소스 용량도 수 십 기가 정도다.

This post is licensed under CC BY 4.0 by the author.