본문 바로가기

개발 개발/Android

전체 소스에서 일부만 다시 빌드 - mmm 커맨드

출처 : http://www.androidpub.com/3715

전체 소스를 
http://source.android.com/download 에서 하라는데로 다운로드 받고 한번 빌드하는 것까지는 다들 쉽게 따라하셨을 것이라 생각합니다. 그 이후에 특정부분만 다시 빌드하고 싶을 때는 다시 make를 할 필요없이 mmm이라는 커맨드를 사용하면 됩니다. 

$. build/envsetup.sh
을 실행한 후

$ mmm packages/apps/Contacts
와 같이 시행하면 Contacts부분만 다시 빌드됩니다. Android.mk가 존재하는 Path만 적용할 수 있습니다.

$ make snod
를 실행하면 위에서 빌드한 Contacts를 적용한 system.img 를 다시 빠르게 생성합니다.

그리고 한글등이 들어갈 때 utf8 인코딩을 쓰게는데 안드로이드 플랫폼 소스 빌드시에 javac가 ascii 인코딩으로 설정되어있습니다. 

build/core/definitions.mk 에서 -encoding ascii 를 -encoding utf8로 바꿔주면 됩니다. utf8 소스도 사용할 수 있습니다. 

그리고 mmm과 별도로
$make sdk
를 통해 SDK를 만들 수 있습니다.


플랫폼은 왠만하면 안보려고 했는데 어플리케이션 개발하는 입장에서도 가끔씩 빌드하고 고쳐서 써야하는 부분이 있어서 팁을 정리해봅니다.