我试图在我的Android设备上安装valgrind,但是当我尝试执行adb push Inst /
我收到一个错误
C:\VmFiles>adb push Inst /
push: Inst/data/local/Inst/bin/vgdb -> /data/local/Inst/bin/vgdb
failed to copy 'Inst/data/local/Inst/bin/vgdb' to '/data/local/Inst/bin/vgdb': N
o such file or directory
Ofc文件vgdb存在于此目录
中 C:\VmFiles>ls Inst/data/local/Inst/bin
callgrind_annotate cg_diff valgrind vgdb
callgrind_control cg_merge valgrind-di-server
cg_annotate ms_print valgrind-listener
答案 0 :(得分:0)
为此你需要root访问你的设备,因为你无法访问没有root权限的/ data /目录 然后执行以下步骤。
首先转到放置vgdb的目录 执行
adb push vgdb /data/local/Inst/bin/
答案 1 :(得分:0)
adb push
的语法:
adb push <PATH_OF_FILE_ON_HOST> <PATH_OF_FILE_ON_DEVICE>`
因为你试图从Inst/data/local/Inst/bin/
路径推进。将以下命令与绝对路径一起使用。
adb push /full/path/to/Inst/data/local/Inst/bin/ /path/on/device/test_folder/
这应该将目录Inst/data/local/Inst/bin/
的所有(文件和目录)内容推送到/path/on/device/test_folder/
确保/path/on/device/test_folder/
存在,或者事先在命令下运行。
adb shell mkdir /path/on/device/test_folder/
如果您的文件已传输到设备,请使用adb shell ls /path/on/device/test_folder/
列出。
另外,请确保您有权限才能写入/path/on/device/test_folder
注意:您通常有权写入/sdcard/
但又需要root权限才能为传输的二进制文件分配执行权限(chmod
)。
在这种情况下,可能需要root设备。