我正在尝试构建最新版本的 Spatialite 以在 iOS 平台上使用,但没有取得太大进展。我下载了以下库的最新版本,并尝试将它们放入一个项目(每个作为自己的目标)并将它们构建为一个静态库。

  • Spatialite (3.0.1 合并)
  • GEOS(每晚构建于 20121114)
  • PROJ.4 (4.8.0)

  • 每次下载都包含数十个文件,这些文件与脚本、标题和源代码混合在一起。从步骤 here 中不清楚哪些应该加载,哪些不应该加载。我曾尝试将每个目录中的所有文件都放入它们自己的组中,但无济于事,我陷入了第 2 步,因为我的 Xcode 版本与示例中使用的不同。添加 PROJ.4 位时,Xcode 询问我是否要创建“外部构建系统项目”。

    我还尝试从这个 post 中获取 Lionel 的项目并更新所有软件的版本。不幸的是,Xcode 在新的源代码中抛出了许多警告并抛出了一些错误。如果需要,我可以分享这些。更进一步,我什至把他的输出(一个静态库和头文件)带到另一个项目中,但由于某种原因,编译器抛出错误,说他们找不到“sqlite3”。我已将 SQLite3 添加到项目中,但它并没有解决问题。

    我也尝试跟进此 thread ,但我无法提出问题,因此我无法询问原始用户他/她是如何做到这一点的。

    最后,问一个问题:

    有谁知道如何使用 Xcode 4.5 和 iOS 6 构建最新版本的 Spatialite 及其配套库(GEOS、PROJ.4)?

    如果是这样,你能分享你是如何做到的吗?我也想从概念上了解正在发生的事情。

    最佳答案

    我知道两种替代方法,对我来说都很好。

  • libspatialite-ios 获取 Makefile 和补丁,输入 make
  • 使用 Cocoapods 和名为 'spatialite' 的 pod 或更一般的 SpatialDBKit

  • 两者都将为您提供当前稍旧的 4.1.1 版本,但这对于大多数用途来说都很好。

    关于ios - Spatialite 和 iOS,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13463305/

    10-12 05:36