Android Platform Build for Google Galaxy Nexus

내장형 운영체제 프로젝트에서 Android platform을 빌드하게 되었다. 다음과 같은 과정으로 빌드할 수 있다.

1. Java SE Development Kit 6u45 설치

#download JDK first from http://www.oracle.com/technetwork/java/javase/downloads/java-archive-downloads-javase6-419409.html
$chmod +x ./jdk-6u45-linux-x64.bin
$./jdk-6u45-linux-x64.bin

OpenJDK를 사용하면 빌드 과정에서 에러가 발생한다[1]. 반드시 Oracle에서 제공하는 JDK를 사용해야 한다. (jdk-6u45-linux-x64.bin)

환경변수에 JDK의 경로를 ~/.bashrc에 추가해준다.

export JAVA_HOME=$HOME:/path/to/jdk
export PATH=$PATH:$JAVA_HOME/bin
export LC_CTYPE=C
export LANG=C

2. 빌드에 필요한 패키지 설치

$sudo apt-get install git-core gnupg flex bison build-essential zip curl zlib1g-dev libc6-dev lib32ncurses5-dev lib32z1-dev libgl1-mesa-dev g++-multilib tofrodos python-markdown libxml2-utils xsltproc gperf libswitch-perl

3. Android Source Code Download

$curl http://commondatastorage.googleapis.com/git-repo-downloads/repo > ./repo
$chmod +x ./repo
$repo init -u https://android.googlesource.com/platform/manifest -b android-4.3_r3.1
$repo sync -j8

4. Vendor Proprietary 파일을 다운받는다.
Samsung의 binary만 받았었는데, Samsung의 vendor proprietary 파일만 받아서는 안 되는 것 같다. 부팅이 잘 되지 않는 오류가 발생함. vendor proprietary 파일을 모두 받아야 한다.

$wget https://dl.google.com/dl/android/aosp/samsung-maguro-jwr66y-fb8f93b6.tgz
$tar -xzvf ./samsung-maguro-jwr66y-fb8f93b6.tgz
$chmod +x ./samsung-maguro-jwr66y-fb8f93b6/extract-samsung-maguro.sh

5. Android Platform Build

$. build/envsetup.sh
$lunch #12번 선택
$make -j15

6. Zip and Upload to the Device

$cd ./out/target/product/maguro
$zip -v maguro.zip android-info.txt boot.img recovery.img system.img userdata.img
$adb reboot bootloader; fastboot -w update maguro.zip

References:
[1] 안드로이드 Full Source 다운로드 및 Build 하기(PDK 환경 구성), http://thdev.net/498
[2] Downloading and Building, Android, https://source.android.com/source/initializing.html
[3] Binaries for Nexus Devices, Google Developers, https://developers.google.com/android/nexus/drivers
[4] Howto Build Android AOSP for Google Nexus 4, http://nosemaj.org/howto-build-android-nexus-4
[5] Howto Build Android KitKat (4.4) for the Google Nexus 5, http://nosemaj.org/howto-build-android-kitkat-nexus-5

Advertisements
Tagged with: , , , ,
Posted in 2) Computer Engineering

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

누적 방문자 수
  • 93,420 hits
%d bloggers like this: