반응형

Android.mk 2

Android NDK 빌드 가이드: Android.mk vs CMakeLists.txt 설정부터 네이티브 디버깅까지

안녕하세요! 지난 포스팅을 통해 안드로이드 백그라운드에서 살아 숨 쉬는 C/C++ 사용자 정의 데몬(Daemon)의 소스코드를 함께 구현해 보았습니다. 코드를 멋지게 짜두었으니 이제 이 코드를 안드로이드 시스템이 이해할 수 있는 바이너리 파일로 구워낼(빌드) 차례입니다.안드로이드 NDK 진영에는 두 가지 빌드 시스템 파벌(?)이 존재합니다. 예전부터 전통적으로 사용해 온 전통의 Make 기반 Android.mk 방식과, 구글이 현재 표준으로 강력하게 밀고 있는 모던한 CMakeLists.txt 방식이죠. 레거시 프로젝트를 유지보수하거나 임베디드 장비 전용 빌드 스크립트를 짤 때는 전자룰, 최신 안드로이드 스튜디오 앱 프로젝트를 개발할 때는 후자를 다룰 줄 알아야 진정한 NDK 전문가라고 할 수 있습니다...

AOSP 안드로이드 빌드 시스템 총정리: Android.mk(Make)에서 Android.bp(Soong)로의 진화

안드로이드 기반의 단말기를 개발하거나 AOSP(Android Open Source Project) 소스 코드를 내려받아 플랫폼 레벨의 빌드를 진행하다 보면, 수많은 빌드 설정 파일들을 마주하게 됩니다. 과거에는 친숙한 Android.mk 파일이 주를 이루었지만, 최신 안드로이드 버전을 열어보면 구조가 완전히 다른 Android.bp 파일이 소스 트리 곳곳을 채우고 있는데요.수백 기가바이트에 달하는 소스코드를 효율적으로 빌드하기 위해 구글은 오랜 기간 빌드 시스템을 진화시켜 왔습니다. 이번 포스팅에서는 기존 GNU Make 기반 시스템의 한계를 극복하기 위해 도입된 Soong 빌드 시스템의 구조를 살펴보고, 핵심 컴포넌트들의 역할과 차이점을 명확하게 정리해 보겠습니다.📌 핵심 요약 3줄안드로이드 초기에는..

반응형