如何在TWRP中执行Shell的pm命令?三星Galaxy S5 6.0.1遇libqc-opt.so缺失
解决TWRP环境下执行pm命令提示libqc-opt.so找不到的问题
我之前帮朋友处理过几乎一模一样的三星Galaxy S5(6.0.1原生系统)在TWRP里执行pm命令报错的情况,你的问题根源很清晰:TWRP的Shell环境默认的库搜索路径(LD_LIBRARY_PATH)没有包含/system/vendor/lib,而pm命令依赖的libqc-opt.so恰好存放在这个目录里,导致执行时无法找到依赖库。
下面是具体的解决步骤:
第一步:确保/system分区已挂载
TWRP默认可能没有自动挂载/system分区,先执行挂载命令:adb shell mount /system或者你也可以直接在TWRP界面里进入「挂载」选项,勾选「system」完成挂载。
第二步:临时添加库搜索路径后执行pm命令
你需要手动把/system/vendor/lib加入到LD_LIBRARY_PATH中,再执行pm命令。有两种方式:- 单次命令直接执行:
比如你要列出所有应用,就替换成adb shell "export LD_LIBRARY_PATH=/system/lib:/system/vendor/lib && pm <你要执行的具体命令>"pm list packages。 - 进入交互式Shell后操作:
adb shell # 先设置环境变量 export LD_LIBRARY_PATH=/system/lib:/system/vendor/lib # 再执行pm命令 pm <你要执行的具体命令>
- 单次命令直接执行:
这样操作后,pm命令就能找到依赖的libqc-opt.so库,正常执行了。如果只是临时使用pm命令,临时设置环境变量就足够;如果需要长期在TWRP里使用,也可以修改TWRP的启动脚本,但临时设置是最快捷的方案。
内容的提问来源于stack exchange,提问作者Bruce
相关产品推荐
相关产品推荐

