我通过使用 android ndk 更改 CC、CFALGS LDFLAGS 为 android 交叉编译了 libxml2-2.90。运行config和make,编译成功。
然后我用原生 c 编写了简单的基于 libxml2 的示例,并编写了包含上述库和包含编译共享库的 Android.mk 文件。
1.我使用ndk-build脚本,成功编译原生libxml应用
- 我将这两个库放在 android 项目 /libs/armeabi
然后我在android java应用代码中加载了这两个库
System.loadLibrary("xml2"); //libxml2.so.2.9.0
System.loadLibrary("samplexml2"); //libsamplexml2.so
但是当我运行我的应用程序时,我得到了 android app 的以下运行时错误。
异常 Ljava/lang/UnsatisfiedLinkError; 初始化 Lcom/example/xmlsample/XmlParse 时抛出;
引起:java.lang.UnsatisfiedLinkError:无法加载库:link_image[1891]:37 无法为“libsamplexml2.so”加载所需的库“libxml2.so.2”(load_library[1093]:库“libxml2.so.2” ' 未找到)
请帮助如何正确链接 xml2 lib ..