拿到一個RK3288的開發板,可是不得不說adb shell不太好用,像下面這樣太銼了。 java
因而想着把busybox編譯進去。python
其實如今Ubuntu上交叉編譯相比以前要簡單那不少。linux
sudo add-apt-repository ppa:webupd8team/java sudo apt-get update sudo apt-get install oracle-java6-installer
Ubuntu 12.04 軟件包安裝:git
sudo apt-get install git 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 \ g++-multilib mingw32 tofrodos gcc-multilib ia32-libs\ python-markdown libxml2-utils xsltproc zlib1g-dev:i386
Ubuntu 13.10/14.04 軟件包安裝:web
sudo apt-get install git-core gnupg flex bison gperf libsdl1.2-dev \ libesd0-dev libwxgtk2.8-dev squashfs-tools build-essential zip curl \ libncurses5-dev zlib1g-dev pngcrush schedtool libxml2 libxml2-utils \ xsltproc lzop libc6-dev schedtool g++-multilib lib32z1-dev lib32ncurses5-dev \ lib32readline-gplv2-dev gcc-multilib libswitch-perl
sudo apt-get install gcc-arm-linux-gnueabihf \ lzop libncurses5-dev \ libssl1.0.0 libssl-dev
這裏至於gcc-arm-linux-gnueabihf仍是gcc-arm-linux-gnueabi要看你芯片,應該是hard float吧shell
下載最新版本busybox源碼,下載地址:http://www.busybox.net/downloads/。markdown
$ mkdir ~/busybox # 建立工做目錄 $ cp busybox-1.22.1.tar.bz2 ~/busybox # 複製源碼包 $ cd ~/busybox/ # 進入工做目錄 $ tar -jxvf busybox-1.22.1.tar.bz2 # 解壓 $ cd busybox-1.22.1/ # 進入解壓包
dpkg -L gcc-arm-linux-gnueabihf
看裝哪裏了,apt-get安裝的還好,通常都/usr/bin了,沒有的要加到環境變量oracle
mkdir busybox-install
根據我的喜愛,用menuconfig或者直接修改.config,主要是這裏有幾點注意:curl
這裏是前綴,不加gcc,到-結束,如個人:arm-linux-gnueabihf-; Busybox Settings --> Build Options --> Cross compiler prefix - Set this option equal to "arm-linux-gnueabihf-";工具
建議使用靜態編譯; Busybox Settings --> Build Options --> Build Busybox as a static binary (no shared libs) - Enable this option by pressing "Y"
Busybox Settings --> Installation Options --> Don't use /usr - Enable this option by pressing "Y"
上一步的install目錄,要使用絕對路徑。
$ make # 編譯,若是是多核CPU,如四核,使用make -j4可提升編譯速度 $ make install # 安裝
或用Root Explore 把/掛載爲可讀寫
adb shell mkdir busybox adb push ./bin /busybox/bin adb push ./sbin /busybox/sbin export PATH=/busybox/bin:/busybox/sbin:$PATH:
看下效果,跟前面adb shell是否是天壤之別了。若是再配合安裝個SSH SERVER用就更爽了,徹底脫離adb,主要是有VI 了,能夠遠程鍵盤編輯了。