사실 저도 야매로만 배워서 강좌를 쓸만한 사람인가 의심이 들지만 혹시나 도움이 될까봐 한번 적어볼렵니다.
준비물
*컴퓨터
*우분투 (반드시 64bit)
*용량 80GB이상
*인터넷 등등
자 이제 준비가 되었으면 본격적으로 해봅시다.
첫번째로 자바가 설치되야합니다. 구글 홈페이지에서 시킨대로하면 뭔가 오류가 많아서...
자 터미널을 실행시키시고...실행!!
구글에서 자바5를 설치하는 과정인데 여기서 sun-java5대신 6을 써줍시다 이렇게요
$ sudo add-apt-repository "deb http://archive.ubuntu.com/ubuntu hardy main multiverse"
$ sudo add-apt-repository "deb http://archive.ubuntu.com/ubuntu hardy-updates main multiverse"
$ sudo apt-get update
$ sudo apt-get install sun-java6-jdk
이렇게 터미널에 치시고 그럼 다운로드하고 설치하고 나중에 회색알림창이 뜨면서 ok가 뜨는데 화살표키를
이용하여 클릭해줍니다.
혹시 자바 버전이 알고싶으시다면
java -version치시면 됩니다.
Python과 git-core를 설치하기
아래 칸에 있는걸 복.붙해서 쳐줍시다
$ sudo apt-get install python
자 python이 설치되면 git-core를 설치하기위하여 아래의 글을 쳐줍시다.
$ sudo apt-get install git-core
다음은 안드로이드 sdk를 설치해봅시다 아래 링크에 들어가서 리눅스용을 다운받습니다
- 다운은 여기서: http://developer.android.com/sdk/index.html
- 다운받은 파일을 내파일에 옮기고 파일을 옮깁시다.
- 그파일 을 압축을 풀어주고 그 폴더명을 android-sdk로 바꿔줍시다.( 그래야 명령어 치기 편해요..)
- 그다음엔 아래있는 명령어들을 쳐줍시다
Code:
# Android tools export PATH=${PATH}:~/android-sdk/tools export PATH=${PATH}:~/android-sdk/platform-tools export PATH=${PATH}:~/bin
-
저위에코드들을 다치면 이 아래것들도 마져 쳐줍시다
-
Code:
PATH="$HOME/android-sdk/tools:$HOME/android-sdk/platform-tools:$PATH"
- 자이제 그럼 설치가 완료되었으니 실행을 시켜봅시다.
- 터미널에 android를 쳐주세요
Code:$ android
그럼 안드로이드 sdk 설치 툴이 실행될텐데요 그럼android-tools에 있는것들만 설치해주세요.
2) 남은 패키지 설치하기
사실 패키지는 이것보다 훨신 많으니 이것들도 쳐줘서 나머지 패키지를 설치합시다.
아래에 있는건 우분투 10.04를 위한 코드
$ sudo apt-get install git-core gnupg flex bison gperf build-essential \
zip curl zlib1g-dev libc6-dev lib32ncurses5-dev ia32-libs \
x11proto-core-dev libx11-dev lib32readline5-dev lib32z-dev \
libgl1-mesa-dev g++-multilib mingw32 tofrodos python-markdown \
libxml2-utils xsltproc
여기있는 코드들은 우분투 11.10을 위한 코드
$ sudo ln -s /usr/lib/i386-linux-gnu/libX11.so.6 /usr/lib/i386-linux-gnu/libX11.so
이코드들은 우분투 12.04를 위한 코드들.
$ sudo apt-get install git-core gnupg flex bison gperf build-essential \ zip curl libc6-dev libncurses5-dev:i386 x11proto-core-dev \ libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-glx:i386 \ libgl1-mesa-dev g++-multilib mingw32 openjdk-6-jdk tofrodos \ python-markdown libxml2-utils xsltproc zlib1g-dev:i386 $ sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/lib/i386-linux-gnu/libGL.so
각자 맞는 우분투 버전에 따라 쳐서 남은 패키지를 다운받아주시면 되요.
tip: 우분투 12.04기준으로 패키지를 설치중 오류가 나면
sudo apt-get -f install을 쳐주시면 오류난 부분만 다시 설치합니다.
3) USB드라이버를 설치해봅시다.
역시 아래에있는 코드를
$ gksudo gedit /etc/udev/rules.d/51-android.rules
(혹시 안되면 gksudo에서 gk빼고 sudo만 해보세요 저는 간혹 그렇게 하면 되더라고요. 아님말고..)
정상적으로 명령어가 들어가면 메모장이 하나 뜹니다 아무것도 없지요 후후 거기에다가 자신의 폰만든 회사코드번호를 아래에서 복사해서
붙여넣기한 다음 저장을 해줍시다.(레퍼는 구글인거 아시죠?)
#Acer SUBSYSTEM=="usb", ATTR{idVendor}=="0502", MODE="0666" #ASUS SUBSYSTEM=="usb", ATTR{idVendor}=="0b05", MODE="0666" #Dell SUBSYSTEM=="usb", ATTR{idVendor}=="413c", MODE="0666" #Foxconn SUBSYSTEM=="usb", ATTR{idVendor}=="0489", MODE="0666" #Garmin-Asus SUBSYSTEM=="usb", ATTR{idVendor}=="091E", MODE="0666" #Google SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", MODE="0666" #HTC SUBSYSTEM=="usb", ATTR{idVendor}=="0bb4", MODE="0666" #Huawei SUBSYSTEM=="usb", ATTR{idVendor}=="12d1", MODE="0666" #K-Touch SUBSYSTEM=="usb", ATTR{idVendor}=="24e3", MODE="0666" #KT Tech SUBSYSTEM=="usb", ATTR{idVendor}=="2116", MODE="0666" #Kyocera SUBSYSTEM=="usb", ATTR{idVendor}=="0482", MODE="0666" #Lenevo SUBSYSTEM=="usb", ATTR{idVendor}=="17EF", MODE="0666" #LG SUBSYSTEM=="usb", ATTR{idVendor}=="1004", MODE="0666" #Motorola SUBSYSTEM=="usb", ATTR{idVendor}=="22b8", MODE="0666" #NEC SUBSYSTEM=="usb", ATTR{idVendor}=="0409", MODE="0666" #Nook SUBSYSTEM=="usb", ATTR{idVendor}=="2080", MODE="0666" #Nvidia SUBSYSTEM=="usb", ATTR{idVendor}=="0955", MODE="0666" #OTGV SUBSYSTEM=="usb", ATTR{idVendor}=="2257", MODE="0666" #Pantech SUBSYSTEM=="usb", ATTR{idVendor}=="10A9", MODE="0666" #Philips SUBSYSTEM=="usb", ATTR{idVendor}=="0471", MODE="0666" #PMC-Sierra SUBSYSTEM=="usb", ATTR{idVendor}=="04da", MODE="0666" #Qualcomm SUBSYSTEM=="usb", ATTR{idVendor}=="05c6", MODE="0666" #SK Telesys SUBSYSTEM=="usb", ATTR{idVendor}=="1f53", MODE="0666" #Samsung SUBSYSTEM=="usb", ATTR{idVendor}=="04e8", MODE="0666" #Sharp SUBSYSTEM=="usb", ATTR{idVendor}=="04dd", MODE="0666" #Sony Ericsson SUBSYSTEM=="usb", ATTR{idVendor}=="0fce", MODE="0666" #Toshiba SUBSYSTEM=="usb", ATTR{idVendor}=="0930", MODE="0666" #ZTE SUBSYSTEM=="usb", ATTR{idVendor}=="19D2", MODE="0666"
4) 저장을 하시고 종료하셨으면 다음 구문을 쳐줍시다
$ sudo chmod a+r /etc/udev/rules.d/51-android.rules
자이렇게 되면 이제 usb는 설정이 된거에요.
혹시 됬는지 안됬는지 어떻게 확인하냐고요? 그럼 폰을 컴퓨터와 연결한체로 이렇게 쳐봅시다.
PATH=~/android-sdk/platform-tools:$PATH
adb devices
이렇게 했을때 에러없이 작동하면 제대로 설정이 된겁니다.
5)자 이제 빌드를 할 소스(AOSP)를 받아보겠습니다.
아래와 같이 쳐주세요.
$ mkdir ~/bin $ PATH=~/bin:$PATH $ curl https://dl-ssl.google.com/dl/googlesource/git-repo/repo > ~/bin/repo $ chmod a+x ~/bin/repo
6) 위처럼 되면 이제 소스를 받을 폴더생성밑 소스받을 경로 지정을 해줍시다.
$ mkdir WORKING_DIRECTORY $ cd WORKING_DIRECTORY $ repo init -u https://android.googlesource.com/platform/manifest -b android-4.1.2_r1
WORKING_DIERCTORY 는 자신이 하고싶은 폴더로 이름 바꿔도 상관은 없어요.
6.1) 위처럼 잘따라 오셧으면 이제 생성된 폴더로 들어가서 소스를 받아봅시다
$ cd WORKING_DIRECTORY $ repo init -b android-4.1.2_r1 $ repo sync -j(4~16)
-j(4~16)은 -j4에서 -j16까지 받는 속도를 지정하는거에요 자신의 컴퓨터 성능에 맞게끔 조절하시면되요.
ex) -j4 (저위에 써진대로 -j(4~16)이렇게 쓰시면안되요;;)
자 이제 소스를 다 받으면 done이라는 게 뜨고 다시 명령어를 칠수있는 창이 뜰텐데요. 그럼 이제 본격적으로 빌드를 해봅시다.
$ cd ~/WORKING_DIRECTORY
$ . build/envsetup.sh
$ lunch
$ make -j(4~16) or make -j(4~16) otapackage
이렇게 쳐줍시다. 그럼 대망의 빌드가 시작되지요.
빌드하면 오래걸리니 산책이라도 한번 하고 오세요.
빌드가 끝나면 out/target/product/기기코드명/ 경로에 저장되어있을겁니다.
'모바일 IT > 강좌 밑 Tip' 카테고리의 다른 글
linaro toolchain을 이용하여 빌드해보자 (0) | 2014.01.18 |
---|---|
순정 (AOSP)는 질린다. 다른롬들을 한번 빌드해보자 (2) | 2013.01.27 |
넥서스s(crespo)기준 커널을 빌드해보자 (0) | 2013.01.27 |
롬을 빌드해봤으면 커널도 빌드해봐야지? (0) | 2013.01.27 |