我正在尝试为我正在建设的网站安装地理编码器。我正在使用Geocoder,因为Google Maps API的查询限制无法满足我的需求。我安装了所有必需的宝石并拥有SQLite3。当我实际尝试安装地理编码器gem(Geocoder :: US)时,我在运行make文件时出错。
我收到一个我无法弄清楚的错误。它提到了错误(在标题中),然后讨论了一个不存在的文件( sqlite3ext.h )。这是错误:
我知道这很模糊但我已经工作了10多个小时试图安装这个并且在网上找不到任何帮助。任何关于哪个方向的建议都将受到赞赏。
答案 0 :(得分:4)
这是来自项目的Readme:
要构建Geocoder :: US,您将需要gcc / g ++,make,bash或同等产品, 标准的* NIX'unzip'实用程序,以及SQLite 3可执行文件和 系统上安装的开发文件。
您似乎缺少SQLite3开发标题。
这是相关的:
注意:如果没有安装/usr/include/sqlite3ext.h,那么 您的sqlite3二进制文件可能未配置为支持动态 扩展加载。如果没有,您必须编译并安装SQLite 源,或重建您的系统包。这不被认为是一个 关于Debian / Ubuntu的问题,但已知是Red的一个问题 帽子/ CentOS的。
他们也没有提到Windows。你应该:
答案 1 :(得分:0)
-fPiC
不是你的问题。如日志所述,已编译的代码已经与位置无关。问题是,sqllite3ext.h
不在编译器中包含路径。