作者chrisben (燃烧吧,小宇宙!!!)
看板AndroidDev
标题Re: [问题]环境变数和执行档无法执行问题
时间Tue May 31 14:29:40 2011
※ 引述《allstarschh (allstars)》之铭言:
: 1. emulator应该是要改init.goldfish.rc
我今天确认过,不管是修改init.rc还是init.goldfish.rc,都可以顺利修改
LD_LIBRARY_PATH 这个变数
: 2. 你在adb shell跑那执行档也有作这步吗?
你是指修改LD_LIBRARY_PATH这个变数吗? 如果是的话,有。
且我都是在确认LD_LIBRARY_PATH有加入我要额外搜寻的路径下,去透过
adb shell来执行我的执行档
: 3. 为什麽改init.rc这些script你要重新编image?
我是透过以下指令去执行模拟器:
emulator -system system.img -data userdata.img -ramdisk ramdisk.img
因为init.rc是放在ramdisk.img里,所以我修改完init.rc後,必须要重新make,
以产生新的ramdisk.img来供我使用
: 4. 你也可以用Runtime.exec来echo 你的LD_LIBRARY_PATH看有没有被设
: echo $LD_LIBRARY_PATH > /data/data/your_apk/path.txt
: 前提是你觉得LD_LIBRARY_PATH是问题的话
我今天发现我提出的问题的解法了:
修改: ~/android source目录/bionic/linker/linker.c
在sopaths[]这个变数加入自己要搜寻的lib path,然後重新make,产生出的
image就可以顺利run我额外写的执行档了。
----------------------------------
补充提问:
我希望我写的程式之後可以在手机上run,那有没有动态改变sopaths的方法?
(因为修改linker.c然後重新make,只能在模拟器上这样搞,市面上的手机是
没法这样搞的)
谢谢。
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 59.105.31.75
※ 编辑: chrisben 来自: 59.105.31.75 (05/31 14:31)