您的位置:首页 > 运维架构 > Linux

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

2012-08-16 17:01 537 查看
最近有个项目需要用到第三方的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,这个是完全可以使用的。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  file 平台 linux jni x86 文档
相关文章推荐