首页,感谢你的阅读,本人观点:学习编程是个漫长的过程并不是一时就会很厉害的,关键是坚持,快乐地学习,在这里分享我的一些笔记给你;
  最近在做Android上的多媒体开发,通过JNI接口调用各种底层库,例如:lib***.so

  如下所示,总是加载不成功。调试发现,每次加载so库,会跳到catch异常处理部分,然后打印异常log信息。

  1.static{

  2. try{

  3. System.load("/data/data/com.***/lib/lib***.so");

  4. }

  5. catch(UnsatisfiedLinkError ulink){

  6. Log.i("HVnative====","Can not load library");

  7. ulink.printStackTrace();

  8. }

  9.}

  发现网上可以用arm-none-linux-gnueabi-ld工具分析这个动态库,在ubuntu 10.04上安装arm-none-linux-gnueabi-gcc

  方法参考文档:

  http://blog.csdn.net/satiling/article/details/6914466

  找到 arm-none-linux-gnueabi-ld执行程序,添加到系统环境变量:

  1.vim /root/.bashrc

  2.PATH=$PATH:绝对路径

  3.source /root/.bashrc 使环境变量立即生效,分析工具搞定!

  如果“undefined reference to” 后面打印的函数是:

  1、你自己写的函数,那么你应该去检查自己所写的这段代码有何问题,修改之后,再重新编译底层库;

  2、系统函数,暂时还没找到合适的解决办法,自己上网度狗吧,正在努力寻求方法。
知识就是力量,别人学用知识来赚钱的成本低,在达内学习到编程是铸造梦想的地方,如果你喜欢编程,这里,有我们共同语言,共同的故事,共同的梦想!
(责任编辑:广州达内http://tarena3g.com.cn)

更多相关文章

  1. C语言函数的递归(上)
  2. Android(安卓)JNI概述
  3. FFmpeg 中的 log 输出到 Android(安卓)的 logcat 中
  4. Android(安卓)开发环境搭建、配置(基于Windows操作系统、MyEclips
  5. Android(安卓)ADB超简单的安装教程(推荐)
  6. AndroidStudio修改虚拟机AVD路径
  7. 单独编译使用WebRTC的音频处理模块 - android
  8. 搭建Android(安卓)UI Testing自动化测试开发环境
  9. Android(安卓)kotlin之对象和类(2)

随机推荐

  1. Android 框架模式 MVC 在Android中的使用
  2. Android EGL
  3. Handler知识点总结
  4. 画一个可以动的Android 小机器人
  5. Android 手机卡了怎么办
  6. Android有用的程序片段
  7. 分享一个有关Android从小白到资深工程师
  8. android 仓库下载分析
  9. 为 Android 添加 Java 层服务
  10. 两张图让你完全了解IDEA和Android Studio