-3

Android で動作しないコマンドが多すぎるため、この質問をしています。

like, who / which / find (私が欲しい特別なもの)

4

1 に答える 1

2

これらのコマンドのソース コードを見つけて、クロス コンパイル ツールチェーンでコンパイルします。そして、バイナリ ファイルをターゲット デバイスにプッシュします。

通常、これらのコマンドは/system/binフォルダーの下にあります。

より良いアプローチは、ソースを Android ソース コードに入れることです。Android イメージをコンパイルした後、生成された system.img には必要なものが含まれます。

Android ソース コードの下/system/core/toolboxには、AOSP に既に含まれているツールがあります。

$ ls
alarm.c     cmp.c   dmesg.c       getevent.c   id.c        kill.c         lsof.c              mv.c           printenv.c  restorecon.c  runcon.c      setprop.c    sync.c     uptime.c
Android.mk  cp      du.c          getevent.h   ifconfig.c  ln.c           lsusb.c             nandread.c     ps.c        rm.c          schedtop.c    setsebool.c  syren.c    vmstat.c
cat.c       date.c  dynarray.c    getprop.c    iftop.c     load_policy.c  md5.c               netstat.c      r.c         rmdir.c       sendevent.c   sleep.c      toolbox.c  watchprops.c
chcon.c     dd.c    dynarray.h    getsebool.c  insmod.c    log.c          mkdir.c             newfs_msdos.c  readtty.c   rmmod.c       setconsole.c  smd.c        top.c      wipe.c
chmod.c     dd.h    exists.c      grep         ioctl.c     ls.c           MODULE_LICENSE_BSD  NOTICE         reboot.c    rotatefb.c    setenforce.c  start.c      touch.c
chown.c     df.c    getenforce.c  hd.c         ionice.c    lsmod.c        mount.c             notify.c       renice.c    route.c       setkey.c      stop.c       umount.c

who.c、find.c などの .c ファイルを追加したら、Android.mk を変更することを忘れないでください。

于 2013-03-02T09:03:08.747 に答える