Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用原生Ruby绑定安装GEOS? GEOS是java拓扑结构的C++端口。它支持几何图形和地理空间处理,是PostgreSQL的PostGIS下的库。我想直接在Ruby中使用它,而不是在PostGIS中,而且我知道有原生Ruby绑定,但是在线文档很少,而且安装有缺陷。如何在启用Ruby绑定的情况下安装GEOS?1。编译并安装Swig_Ruby_Geometry_Geospatial_Postgis_Geos - Fatal编程技术网

如何使用原生Ruby绑定安装GEOS? GEOS是java拓扑结构的C++端口。它支持几何图形和地理空间处理,是PostgreSQL的PostGIS下的库。我想直接在Ruby中使用它,而不是在PostGIS中,而且我知道有原生Ruby绑定,但是在线文档很少,而且安装有缺陷。如何在启用Ruby绑定的情况下安装GEOS?1。编译并安装Swig

如何使用原生Ruby绑定安装GEOS? GEOS是java拓扑结构的C++端口。它支持几何图形和地理空间处理,是PostgreSQL的PostGIS下的库。我想直接在Ruby中使用它,而不是在PostGIS中,而且我知道有原生Ruby绑定,但是在线文档很少,而且安装有缺陷。如何在启用Ruby绑定的情况下安装GEOS?1。编译并安装Swig,ruby,geometry,geospatial,postgis,geos,Ruby,Geometry,Geospatial,Postgis,Geos,Ubuntu MacOSX 下载并解包。在解包目录中: ./configure --without-pcre make && sudo make install ./configure --enable-ruby 或者使用brew安装 2.下载和配置GEOS 下载并解包。在解包目录中: ./configure --without-pcre make && sudo make install ./configure --enable-ruby 查找显示Swi

Ubuntu

MacOSX

下载并解包。在解包目录中:

./configure --without-pcre
make && sudo make install
./configure --enable-ruby
或者使用brew安装

2.下载和配置GEOS 下载并解包。在解包目录中:

./configure --without-pcre
make && sudo make install
./configure --enable-ruby
查找显示Swig:true和Ruby绑定:true的状态行

3.编译和安装GEOS 尝试编译并安装:

make && sudo make install
如果结束时未找到-llibruby.2.0.0.dylib的错误库,则这是由于GEOS当前版本3.4.2中的错误造成的。运行以下命令修复配置文件:

然后返回到步骤2

4.建立链接 在Ruby中使用require'geos'之前,您需要确保库已正确链接。安装目录出现在sudo make install的输出中

Ubuntu

默认安装目录是usr/local/lib

在执行Ruby进程之前,将安装目录添加到LD_LIBRARY_路径

每当运行Ruby可执行文件时,都需要设置此环境变量,因此您可能希望将其添加到bash概要文件中

MacOSX

.so文件的默认安装目录类似于/Library/Ruby/Site/2.0.0/universal-darwin13

RubyonMacOSX需要一个.bundle文件,因此我们创建一个指向.so文件的符号链接

这只需要在安装时运行,就可以永远启用Ruby GEOS绑定

5.用Ruby加载GEOS 如果已正确链接到库,则应该能够使用require'geos',并且看不到任何错误

$ irb
>> require 'geos'
=> true
我知道有一个叫做ffi geos的gem,但我问了这个问题,所以我可以用一个可靠的过程来回答它,从源代码安装本机绑定。
$ cd /Library/Ruby/Site/2.0.0/universal-darwin13
$ sudo ln -s geos.so geos.bundle
$ irb
>> require 'geos'
=> true