티스토리 뷰

Project/Android

BusyBox 설치

Jake Yoon 2013. 12. 10. 21:07

기존 안드로이드 커널 컴파일을 위해 설치했던 toolchain 과는 별개로 busybox 컴파일을 위한 toolchain 을 설치해야 한다.


mkdir ~/toolchain

cd ~/toolchain

wget http://www.codesourcery.com/sgpp/lite/arm/portal/package6488/public/arm-none-linux-gnueabi/arm-2010q1-202-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2 

tar xvf arm-2010q1-202-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2


.bashrc 에 PATH를 설정해준다.




ubuntu에서 BusyBox를 이용하기 위해선 ncurses가 필요하다.



#1. ncurses 설치


 따라서 ncurses가 설치되어있지 않을 수 있으니 ncurses를 먼저 설치해보자.


sudo apt-get install build-essential


sudo apt-get install libncurses5-dev


 혹시 ncurses에 한글을 출력하고 싶을 땐 아래의 라이브러리를 추가로 설치하면 된다.


sudo apt-get install libncursesw5-dev



#2. BusyBox 다운로드


 wget http://busybox.net/downloads/busybox-1.21.1.tar.bz2



#3. BusyBox 압축풀기


 tar xvf busybox-1.21.1.tar.bz2

 cd busybox-1.21.1



#4. BusyBox 설치


 설치하기 위한 config을 만들어야 한다.

 make menuconfig



Busybox Setting을 선택합니다.



Build Options 를 선택합니다.



Build BusyBox as a static binary 에 커서를 올려놓은 채로 스페이스바를 눌러서 체크 상태로 바꿉니다.

이 체크박스가 활성화되어 있으면 빌드할 때 static binary로 빌드를 수행하게 됩니다. 이렇게 수행하는 것이 나중에 안드로이드 파일 시스템에 인스톨을 수행할 때 라이브러리 들을 따로 복사해주지 않아도 되기 때문에 편리합니다.





다음으로 Cross Compiler prefix 메뉴를 눌러서 arm-none-linux-gnueabi- 를 입력하고 Ok를 눌러줍니다. 이렇게 되면 툴체인으로 설치된 arm컴파일러인 arm-eabi-gcc 에 접근하여 크로스 컴파일하게 됩니다.





ESC 를 여러번 눌러서 다음과 같은 화면이 나오면 Yes 를 선택해서 config 파일 생성을 마무리합니다.






댓글