【发布时间】:2015-01-06 01:19:45
【问题描述】:
我想使用具有以下依赖关系的 libcaldav。我已经构建了 libcaldav.0.dylib,而其他依赖项是通过端口或 brew 在 MAC 上安装的
otool -L ~/lib/libcaldav.0.dylib
~/lib/libcaldav.0.dylib:
~/lib/libcaldav.0.dylib (compatibility version 1.0.0, current version 1.6.0)
/opt/local/lib/libcurl.4.dylib (compatibility version 8.0.0, current version 8.0.0)
/opt/local/lib/libgnutls.28.dylib (compatibility version 70.0.0, current version 70.1.0)
/opt/local/lib/libgthread-2.0.0.dylib (compatibility version 4201.0.0, current version 4201.0.0)
/opt/local/lib/libglib-2.0.0.dylib (compatibility version 4201.0.0, current version 4201.0.0)
/opt/local/lib/libintl.8.dylib (compatibility version 10.0.0, current version 10.2.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1197.1.1)
我尝试使用
将这些文件添加到 Xcode ios 应用程序- 将二进制文件与库链接 -> Xcode 构建阶段
- 其他链接器标志 -> 构建设置
- 设置适当的搜索路径
但是,我收到以下警告和错误
ld:为 iOS 模拟器构建,但链接到为构建的 dylib 用于架构 x86_64 的 MacOSX 文件“/lib/libcaldav.0.dylib”: 错误:链接器命令失败,退出代码为 1(使用 -v 查看 调用)
环境
- Xcode = 6.1
- 支持的平台 = iOS
- 有效架构 = arm64、armv7 和 armv7s
libcaldav 源码
https://github.com/fd00/yacp/tree/master/libcaldav
请帮助我,因为我一直在挣扎。请指点我需要做什么。
【问题讨论】:
-
您将需要一个为 ARM 架构构建的库版本。您的目标是不同的平台,其中 CPU 不是 Intel 处理器而是 ARM 处理器。需要为此编译库。不要对您在 Mac 上运行 iOS 模拟器这一事实感到困惑。用ARM处理器模拟iOS设备真的很费劲。
-
我知道这也适用于所有部门......卷曲 gnutls 以及......这真的很难
-
请注意,
libcaldav是根据 GNU GPLv2 获得许可的,它不与 iOS App Store 上的分发兼容。 -
@duskwuff 谢谢你的评论......你让我很容易决定走哪条路......喜欢这样
标签: ios objective-c c xcode ios6