【问题标题】:How to load Spatialite SQLite extension on macOS如何在 macOS 上加载 Spatialite SQLite 扩展
【发布时间】:2017-09-19 15:09:25
【问题描述】:

我正在尝试在 SQLite 中加载 libspatialite 扩展。根据installation guide,我下载了最新的libspatialite并将包含的libspatialite.1.1.3.dylib文件移动到/usr/local/lib

greg /usr/local/lib $ls | grep libspatialite
libspatialite.1.1.3.dylib

但是,我无法加载扩展程序。

sql> SELECT load_extension('libspatialite.1.1.3.dylib')
[2017-09-19 10:45:25] [1] [SQLITE_ERROR] SQL error or missing database (dlopen(libspatialite.1.1.3.dylib.dylib, 10): image not found)

我还尝试将libspatialite.1.1.3.dylib.dylib 与 sqlite 文件存储在同一目录中,但没有成功。

我已经确认enable_load_extensiontrue,并且我正在使用 DataGrip 作为我的 IDE。我还退出了 DataGrip 并重新启动以确保收集到任何新的二进制文件。我错过了什么明显的东西吗?

【问题讨论】:

    标签: macos sqlite spatialite


    【解决方案1】:

    根据 homebrew formula 的 libspatialite:

    新的 SQLite3 扩展不会通过 SELECT load_extension("mod_spatialite"); 加载,除非命名为 mod_spatialite.dylib(实际上应该是 mod_spatialite.bundle)。见:https://groups.google.com/forum/#!topic/spatialite-users/EqJAB8FYRdI

    因此,如果手动安装,您需要按照建议重命名动态库文件。或者您可以让 Homebrew 为您完成安装:

    brew install libspatialite
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-12-27
      • 1970-01-01
      • 2017-11-09
      • 2012-02-04
      • 1970-01-01
      • 2017-01-12
      • 2019-02-24
      相关资源
      最近更新 更多