关于 could not read symbols: File in wrong format 问题的解决方案

来源:互联网 发布:2017淘宝小号注册 编辑:程序博客网 时间:2024/05/16 09:29

最近有个项目需要用到第三方的lib,而在它们的官网上面下载了linux版本的so

于是根据它们提供的文档来调用so里面的函数,用ndk将so编译到我自己的jni lib

中去。但是编译是过了,链接时出问题了:

could not read symbols: File in wrong format
collect2: ld returned 1 exit status

后来找了下原因,linux平台下的so 是在x86的CPU架构下编译出来的,但是我们NDK编译

的是用于ARM平台下使用的so(当然也可以是x86的,不过这个需要ndk5以上版本)。

 

所以这个的解决办法是找到对应的ARM平台下的so 。

有两个办法:

 1.直接找对方要,因为你是客户,但如过是小客户,也许不会理你。

 2.从它们提供的APK示例程序中解压得到你想要的lib,这个是完全可以使用的。

原创粉丝点击