如何为iOS编译spatialite

时间:2011-01-25 13:18:49

标签: iphone spatialite

我是新来的,这是我的第一个主题。我是iOS平台上的新手,我正在尝试使用sqlite3进行空间扩展,但我无法做到这一点。这让我发疯了。我不知道我该怎么做,从哪里开始。有人能给我建议吗?

感谢。

4 个答案:

答案 0 :(得分:14)

我是在http:// ;-)上共享lib的人 我在缓解iOS的spatialite集成方面取得了一些进展。 现在,我可以构建一个完全独立的静态空间库(2.3.1嵌入所需的GEOS和PROJ,这样就不必开车了)。

只需下载zip http://lionel.gueganton.free.fr/spatialite/spatialite2.3.1.zip,您就可以获得.86 for x86和arm + header,以便您可以直接使用这些标题中的spatialite接口。

一旦你拖动了.a(两者都需要在模拟器和真实硬件上工作),你可以通过调用spatialite_init(1)初始化spaceite。

以下内容应显示在您的控制台日志中:

SpatiaLite version ..: 2.3.1    Supported Extensions:
    - 'VirtualShape'    [direct Shapefile access]
    - 'VirtualText      [direct CSV/TXT access]
    - 'VirtualNetwork   [Dijkstra shortest path]
    - 'RTree'       [Spatial Index - R*Tree]
    - 'MbrCache'        [Spatial Index - MBR cache]
    - 'VirtualFDO'      [FDO-OGR interoperability]
    - 'SpatiaLite'      [Spatial SQL - OGC]
PROJ.4 version ......: Rel. 4.6.1, 21 August 2008
GEOS version ........: 3.1.1-CAPI-1.6.0

答案 1 :(得分:3)

卷起来,卷起来,让它们在热的时候得到它们!

Masters,Google-fu在这一方面很强大!

不能说我写了这个(我 计划为iPhone SQLite和Spatialite提供CMake脚本,有时很快就会实现),但我建议你自己做在404:

之前到this site

http://lionel.gueganton.free.fr/spatialite/

下载一些好东西,包括预编译的Spatialite +扩展2.3.1二进制文件!!!。

有一个SQLite-on-OSX Cmake script(最初找到here),在SQLite-iPhone版本中可能会重新定位(我会尽快完成)得到时间)。这应该允许您使用最新的SQLite版本(我已经读过Apple包含的版本稍微瘫痪了)。然后,据说,你只需要以本地方式引用头文件,即使用引号

(例如“sqllitexxx.h”)

而不是使用尖括号:

(<击>&LT; sqllitexoldx.h&GT;

那么,我能得到那些多汁点吗?-)?

干杯

Big Rich

答案 2 :(得分:2)

iOS的Spatialite,只需3个简单步骤:

  1. https://github.com/gstf/libspatialite-ios
  2. 获取Makefile和补丁
  3. 输入make
  4. 没有第3步
  5. 向Gustaf Lindqvist提示提供此功能!

答案 3 :(得分:1)

您可能必须编译为armv7目标(优化版本),您还应该使用stdlib ++。dylib链接。