在尝试为模拟器和设备构建胖静态库时,我们遇到了 lipo/libtool 的问题。在 M1 arm64 之前,设备使用 armv7/arm64 切片,模拟器使用 x86_64 切片,一切正常。现在 lipo 无法发现模拟器的 arm64 构建和设备的 arm64 构建之间的差异,并且拒绝添加 2 个 arm64 切片。
有没有办法构建一个“通用”arm64 lib slice(因为我们的 lib 中的代码与平台无关)
是否有其他工具可以实现将 2 个 arm64 切片打包到 .a 中,还是我们现在需要为模拟器和设备构建 2 个单独的静态库?(请注意,我们不使用 Xcode 进行构建,所以我们只是在命令行上链接)。
有趣的是,当链接到诸如 libxml 之类的动态标准库时,无论平台如何, -lxml 就足够了,但这是用于动态库,而不是静态库。静态库是否存在类似的机制?