我编译了一个C库并创建了一个具有适当架构的自定义框架。现在我将它包含在我的项目中它编译得很好但是当在设备上运行时它会抛出它在/Library/Frameworks/Custom.framework中找不到的错误。我想它正在寻找设备而不会在那里找到它。如何解决这个问题? 以下是我得到的错误,我正在为iOS编译ghostscript: GNU gdb 6.3.50-20050815(Apple版gdb-1708)(2011年9月16日星期五06:56:50 UTC)
版权所有2004 Free Software Foundation,Inc。
GDB是免费软件,由GNU通用公共许可证涵盖,您
欢迎在某些条件下更改和/或分发它的副本。
输入“显示复制”以查看条件。
GDB绝对没有保修。输入“show warranty”了解详情。
此GDB配置为“--host = i386-apple-darwin --target = arm-apple-darwin”.tty / dev / ttys003
警告:无法读取/Library/Frameworks/Ghostscript.framework/Ghostscript的符号(找不到文件)。
警告:无法从“Ghostscript”中读取符号(尚未映射到内存中)。
目标remote-mobile /tmp/.XcodeGDBRemote-150-78
切换到remote-macosx协议
mem 0x1000 0x3fffffff cache
mem 0x40000000 0xffffffff none
mem 0x00000000 0x0fff none
[切换到进程7171线程0x1c03]
[切换到进程7171线程0x1c03]
警告:没有在本地找到的副本,从远程设备上的内存中读取。这可能会减慢调试会话的速度。
警告:没有在本地找到的副本,从远程设备上的内存中读取。这可能会减慢调试会话的速度。
sharedlibrary apply-load-rules all
警告:没有在本地找到的副本,从远程设备上的内存中读取。这可能会减慢调试会话的速度。
警告:没有在本地找到的副本,从远程设备上的内存中读取。这可能会减慢调试会话的速度。
dyld:未加载库:/ Library/Frameworks/Ghostscript.framework/Ghostscript
参考文献:/var/mobile/Applications/92492A22-0DA9-49F7-98B6-D517B6E43726/App.app/app
原因:未找到图片
杀
答案 0 :(得分:0)
您无法在手机上使用iOS中的动态库。您只能动态使用手机上已有的Apple库。对于Ghost库,必须静态链接库,使其与单片可执行文件“合并”。这样,库代码不再是外部的,并且不需要动态加载,因为它部署在主程序“内部”。
这是另一个SO答案,它告诉您静态链接的过程: Linking a static library to an iOS project in XCode 4