jni使用问题,交叉编译好的.so文件怎么加入到eclipse工程里。

chang74 2010-10-21 10:15:07
在ubuntu下我已经编译好了.so库文件,但是无论放在哪里loadlibrary都不成功,给LD_LIBRARY_PATH增加该so位置也不行,求达人解救。

好吧只有20分了
...全文
205 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
凉凉二点凉 2010-10-22
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 chang74 的回复:]
引用 2 楼 guoyoulei520 的回复:

大工程文件夹下新建目录 libs---->armeabi ,把so放这个里面

还可以放到/system/lib下,不过这个是只读的,重启模拟器后会没有


大工程是指 eclipse上的android工程吗 ,比如我的android工程叫hello,那么放在hello/libs/armeabi/下?
[/Quote]

是的,你的程序报什么错??看看Log,怀疑你编译的有问题!还有你只是一个so库吗??
chang74 2010-10-22
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 dinjay 的回复:]

对,放在armeabi下,然后文件名为libyoulibname.so
lib前缀要加,然后程序里,可以写个全局的类,
[/Quote]

还是不成功,崩溃了,连catch都不进去,郁闷,我这里没有源代码,也跟不进去。。
dinjay 2010-10-22
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 chang74 的回复:]
引用 2 楼 guoyoulei520 的回复:

大工程文件夹下新建目录 libs---->armeabi ,把so放这个里面

还可以放到/system/lib下,不过这个是只读的,重启模拟器后会没有


大工程是指 eclipse上的android工程吗 ,比如我的android工程叫hello,那么放在hello/libs/armeabi/下?
[/Quote]
对,放在armeabi下,然后文件名为libyoulibname.so
lib前缀要加,然后程序里,可以写个全局的类,

class GlobalClass{
static {
try {
System.loadLibrary("youlibname");
} catch (Exception e) {
System.out.println("Load youlibname failed");
}
}
public static native void jniTest();
}

程序里就直接用:

GlobalClass.jniTest();
chang74 2010-10-22
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 guoyoulei520 的回复:]

大工程文件夹下新建目录 libs---->armeabi ,把so放这个里面

还可以放到/system/lib下,不过这个是只读的,重启模拟器后会没有
[/Quote]

大工程是指 eclipse上的android工程吗 ,比如我的android工程叫hello,那么放在hello/libs/armeabi/下?
凉凉二点凉 2010-10-22
  • 打赏
  • 举报
回复
大工程文件夹下新建目录 libs---->armeabi ,把so放这个里面

还可以放到/system/lib下,不过这个是只读的,重启模拟器后会没有
chang74 2010-10-22
  • 打赏
  • 举报
回复
是的,我只弄了個so文件,貌似有錯誤,最後還是拿NDK編譯成功了。。
jasonchain 2010-10-21
  • 打赏
  • 举报
回复
jni吗? 直接在eclipse工程编译行不行?

80,488

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧