android用にbusyboxをビルド
root化した端末にはbusyboxが存在してるのですが、少々古かったりするので
最新版を自前でビルドしてみます。
用意するもの
GNU ARM Cross compiler
$ wget https://sourcery.mentor.cotal/package8739/public/arm-none-linux-gnueabi/arm-2011.03-41-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2
busybox
ここから最新版(現在は)1.22.1をダウンロードします。
クロスコンパイラとbusyboxを/home/hoge/に展開します
/home/hoge/arm-2011.03/bin/arm-none-linux-gnueabi- がクロスコンパイラの場所になります。
BusyBoxをビルドします。
$ cd /home/hoge/busybox-1.22.1
$ make config
いろいろと聞いてきますが
Build BusyBox as a static binary をY
Cross Compiler prefixに /home/hoge/arm-2011.03/bin/arm-none-linux-gnueabi- を指定
それ以外は片っ端からenterですべてのaplletを使えるようにします。
終了したら
$ make
コンパイルが終了したら/home/hoge/busybox-1.22.1の中にbusyboxのバイナリが出来上がってます。
とりあえずチェック。リカバリモードで起動します。
$ adb reboot recovery
$ adb devices
List of devices attached
42f696006c688f95 recovery
$ adb push /home/hoge/busybox-1.22.1/busybox /data/media
$ adb shell
~ # chmod 755 /data/media/busybox
~ # ./data/media/busybox
BusyBox v1.22.1 (2014-06-13 13:12:56 JST) multi-call binary.
となっていますね。確認できたら端末にbusyboxをインストールします。
~ # mount /system
~ # cp /data/media/busybox /system/xbin
~ # chmod 755 /system/xbin/busybox
~ # /system/xbin/busybox --install -s /system/xbin
~ # rm /data/media/busybox
以上で終了です。
~ # busybox ls とかやってみると ~ # ls とは表示が変わって見やすくなります。
コメントをどうぞ