iPhone App调用第三方dylib失败

时间:2010-09-25 16:15:54

标签: iphone xcode

嘿,伙计们!我想包装vlc,导入vlc dylibs。但这个简单的iPhone应用程序调用那些第三方dylib在加载开始时失败而没有任何提示。我甚至尝试制作一个'hello world'xcode项目,只需添加libvlc.2.dylib& libvlccore.0.dylib但没有调用,手动再添加1个代码。将其下载到iPhone设备(3.1.3)后,它立即启动并退出,没有信息丢失。顺便说一句,所有进口的dylib都被放到了正确的目录中。这让我很困惑!任何机构都可以向我展示解决方案,谢谢!

在设备上运行otool:

root#otool -L test1 测试1:  /System/Library/Frameworks/Foundation.framework/Foundation(兼容版本300.0.0,当前版本678.51.0)  /System/Library/Frameworks/UIKit.framework/UIKit(兼容版本1.0.0,当前版本1000.0.0)  /System/Library/Frameworks/CoreGraphics.framework/CoreGraphics(兼容版本64.0.0,当前版本359.16.0)  /System/Library/Frameworks/CoreData.framework/CoreData(兼容版本1.0.0,当前版本248.0.0)  @ executable_path / PlugIns / libvlccore.0.dylib(兼容版本1.0.0,当前版本1.2.0)  @ executable_path / PlugIns / libvlc.2.dylib(兼容版本3.0.0,当前版本3.2.0)  @ executable_path / PlugIns / liblive555_plugin.dylib(兼容版本0.0.0,当前版本0.0.0)  /usr/lib/libgcc_s.1.dylib(兼容版本1.0.0,当前版本1.0.0)  /usr/lib/libSystem.B.dylib(兼容版本1.0.0,当前版本111.2.1)  /usr/lib/libobjc.A.dylib(兼容性版本1.0.0,当前版本227.0.0)  /System/Library/Frameworks/CoreFoundation.framework/CoreFoundation(兼容版本150.0.0,当前版本478.52.0)

1 个答案:

答案 0 :(得分:1)

iPhone应用程序无法链接到任何其他库,除了iPhone上已有的库。您需要将任何外部库编译到二进制文件中(作为静态库)。