'안드로이드'에 해당되는 글 13건

  1. 2009.07.28 안드로이드 커널 빌드
  2. 2009.07.28 fedor 9 환경에서 다운로드 및 빌드
  3. 2009.07.28 안드로이드 스터디 모임

1. 툴체인 
* codesourcery 의 toolchain 다운로드 - http://www.codesourcery.com/sgpp/lite/arm
/opt/codesourcery 로 설치함.
$ cd /
$ tar zxvf /다운로드경로/codesourcery.tar.gz
* 환경설정 및 컴파일 - 환경변수 PATH 에 /opt/codesourcery/bin 추가
$ export PATH=$PATH:/opt/codesourcery/bin
$ arm-none-linux-gnueabi-gcc -o test test.c
* 로그인시 자동 설정되도록 .bash_profile 수정
$ vi .bash_profile
PATH=$PATH:$HOME/bin:/sbin:/opt/codesourcery/bin
export PATH

2. kernel build
* Makefile 수정
$ vi Makefile
#ARCH       ?= $(SUBARCH)
#CROSS_COMPILE  ?=
ARCH            := arm
CROSS_COMPILE   := $(shell if [ -f .cross_compile ]; then \
                                cat .cross_compile; \
                                fi)

* .cross_compile 생성
$ vi .cross_compile
/opt/codesourcery/bin/arm-none-linux-gnueabi-

* s3c6400 으로 config
$ cp arch/arm/configs/s3c6400_defconfig .config
$ make memuconfig
$ make

3. mtd 설정 및 다운로드

커널에서 mtd 구성시 cache, system, userdata 라는 이름으로 만들어 주어야 합니다.
0x000000000000-0x000000040000 : "Bootloader"
0x000000040000-0x000000060000 : "Environment"
0x000000060000-0x000000360000 : "Kernel"
0x000000360000-0x000000760000 : "Root"
0x000000760000-0x000000f60000 : "cache"
0x000000f60000-0x000004160000 : "system"
0x000004160000-0x000020000000 : "userdata"

빌드 후 생성되는 파일들을 각각 mtd 이름에 맞도록 퓨징 해 주어야 합니다.
system.img -> "system"
userdata.img -> "userdata
"cache" 는 안드로이드 플랫폼에서 각종 cache 를 위해서 예약되어야 하는 영역입니다.
기본적으로 3가지 이름의 mtd 가 만들어 져야 정상적으로 init 이 동작 합니다.

Posted by blee
,

http://source.android.com/download 지침을 따릅니다.
fedor 9 에서 설치 하기는 Other Linux 항목을 참조합니다.

1. 필요한 툴 설치, root 권한으로 수행 합니다.
$ yum clean all
$ yum install python
$ yum install git
$ yum install gperf

2. jdk1.5.0_19 설치 
- /usr/jdk1.5.0_19 로 설치 합니다.
다운로드 : /다운로드경로/jdk-1_5_0_19-linux-i586.bin  ( from java.sun.com )
$ cd /usr/
$ /다운로드경로/jdk-1_5_0_19-linux-i586.bin

3. 버젼 확인
$ python --version
Python 2.5.1
$ git --version
git version 1.5.4.5
$ gperf --version
GNU gperf 3.0.3

4. android 다운로드
$ cd ~
$ mkdir bin
[x] echo $PATH
$ curl http://android.git.kernel.org/repo >~/bin/repo
$ chmod a+x ~/bin/repo
$ export PATH=$PATH:/root/bin
$ cd /home/qt/android/
$ repo init -u git://android.git.kernel.org/platform/manifest.git
$ repo sync

5. android 빌드
$ export LANG=c
$ export JAVA_HOME=/usr/jdk1.5.0_19
$ export PATH=/root/bin:$PATH:$JAVA_HOME/bin
$ export ANDROID_JAVA_HOME=$JAVA_HOME
$ make

'안드로이드 > 플랫폼' 카테고리의 다른 글

init 분석 - 안드로이드 보안 및 권한  (0) 2009.07.28
프로세스, 기본 환경  (0) 2009.07.28
안드로이드 부팅과정  (0) 2009.07.28
안드로이드 커널 빌드  (0) 2009.07.28
안드로이드 스터디 모임  (0) 2009.07.28
Posted by blee
,

리눅스 커널 소스 스터디 모임(LKSAS)의 소 그룹인 안드로이드 플랫폼 분석팀의 맴버 입니다.

리눅스 커널 소스 스터디 모임 홈페이지 : http://www.iamroot.org/
안드로이드 스터디 모임 스프링노트 : http://andstudy.springnote.com/


Posted by blee
,