読者です 読者をやめる 読者になる 読者になる

adb installで/sbin/sh: pm: not foundが出たら

Galaxy SⅡを買ってみたのでまた久しぶりにAndroidをいじっています。
アプリを久しぶりに作ってインストールしようと思ったら

/sbin/sh: pm: not found

と出てしまってインストールできていませんでした。


Scalaでコードを書いてAntを使ってビルドしているので、
普通は起きないのかもしれません。。


adb shellで端末内を探すと

/system/bin/pm

が存在しますが、そこで

./pm

しても

/sbin/sh: pm: not found

と出てしまいます。


pmはただのシェルスクリプトですので先頭が

# Script to start "pm" on the device, which has a very rudimentary
# shell.
#
base=/system
以下省略

となっているところを

#!/system/bin/sh
# Script to start "pm" on the device, which has a very rudimentary
# shell.
#
base=/system
以下省略

と先頭で/system/bin/sh (/sbin/shでも可。shの場所を指定してください。)のように
shの位置を指定するときちんとpmが動くようになり、
adb installもできるようになりました。