2011년 3월 11일 금요일

우분투 10.10(64bit)에서 안드로이드 소스(Gingerbread) 빌드하기

Gingerbread부터는 빌드환경이 64bit OS, JDK6로 변경 되었다.
(이전 버전에서는 32bit, JDK5)

Ubuntu 10.04.1부터는 기본 설정에서 apt-get으로 JDK 5와 JDK 6를 설치할 수가 없다.
이유는 apt-get repository가 없어서 이며, 아래 내용을 통해 repository에 목록 추가 및 업데이트를 하여 설치 할 수가 있다.


# 목록 추가
sudo add-apt-repository "deb http://kr.archive.ubuntu.com/ubuntu/ jaunty multiverse"
sudo add-apt-repository "deb http://kr.archive.ubuntu.com/ubuntu/ jaunty-updates multiverse"

# 목록 업데이트 및 JDK 6 설치
sudo apt-get update
sudo apt-get install sun-java6-jdk

# 자바 목록 확인
sudo update-java-alternatives -l
[ 결과 ] (환경에 따라 다를 수 있음)
java-1.5.0-sun 5 /usr/lib/jvm/java-1.5.0-sun
java-6-sun 63 /usr/lib/jvm/java-6-sun

# 사용하고자 하는 자바 버전으로 변경
sudo update-java-alternatives -s java-6-sun

# 자바 버전 확인
java -version

나머지 패키지 설치 :
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 ia32-libs x11proto-core-dev libx11-dev lib32readline5-dev lib32z-dev

- Download the Android source(여기서는 Android 2.3인 Gingerbread 사용)

# bin 디렉터리 생성
cd ~
mkdir bin

# repo 설치
curl http://android.git.kernel.org/repo >~/bin/repo
chmod a+x ~/bin/repo

# mydroid 디렉터리 생성
mkdir mydroid
cd mydroid

# repo 초기화(Gingerbread로 초기화)
~/bin/repo init -u git://android.git.kernel.org/platform/manifest.git -b gingerbread

# 소스 받기
~/bin/repo sync

- Buildmake

- 에뮬레이터(생성된 이미지를 사용한) 실행
# 환경변수 등록
vi ~/.bashrc
아래 경로 추가
export PATH=/home/<User ID>/mydroid/out/host/linux-x86/bin:$PATH:.
export ANDROID_PRODUCT_OUT=/home/<User ID>/mydroid/out/target/product/generic

"<User ID>"는 환경에 맞게 수정한다.

# 가상 SDCARD 생성
mksdcard 256M sdcard256M.img

생성된 SDCARD는 <User ID>디렉터리에 생성되며, mydroid 디렉터리에 이동시킨다.

# 에뮬레이터 실행
/home/<User ID>/mydroid/out/host/linux-x86/bin/emulator -sdcard /home/<User ID>/mydroid/sdcard256M.img

댓글 없음:

댓글 쓰기