iOS - 如何使用现有的动态库(.so文件)

时间:2014-09-08 16:09:14

标签: ios xcode shared-objects dynamic-library

我有一个现有的动态库,我尝试使用dlopen()将此库用于我的iOS应用程序,但该函数始终返回NULL。该库是.so文件,来自Android项目。 dlerror()返回:

dlopen(/var/mobile/Applications/990CF1A9-B467-471B-9FDB-D0929D90B01D/Documents/libsamlib.so, 10): no suitable image found.  
Did find: /var/mobile/Applications/990CF1A9-B467-471B-9FDB-D0929D90B01D/Documents/libsamlib.so: unknown file type, first eight bytes: 0x7F 0x45 0x4C 0x46 0x01 0x01 0x01 0x00

我的应用程序不会出现在App Store上,但我在互联网上看到加载动态库在技术上是可行的。有人已经设法用dlopen加载.so动态库吗?

1 个答案:

答案 0 :(得分:0)

显然,我想要导入的动态库必须使用iOS体系结构进行编译。因此,我发现的解决方案是重新编译原始库中的所有源文件,创建.dylib并且dlopen()将起作用。 这link对我帮助很大。