地理位置安装在非标准位置

时间:2014-02-04 16:24:29

标签: ruby compilation gem nitrousio rgeo

我在nitrous.io上运行并尝试使用ruby 2.0.0-p353安装rgeo gem。

我没有sudo访问权限,因此我尝试从源代码编译并安装geos

下载并解压缩源文件后,我cd进入源文件夹并运行

mkdir /home/action/local && ./configure --prefix=/home/action/local
make && make install

这会运行一下。然后我跑

gem install rgeo -- --with-geos-dir=/home/action/local
事情看起来不错,但如果我跳进终端,我就会

RGeo::Geos.supported?
> false

回顾mkmf.log文件,我看到以下几行:

/usr/bin/ld: cannot find -lgeos                                                                                                                                                    
/usr/bin/ld: cannot find -lgeos_c                                                                                                                                                  
/usr/bin/ld: cannot find -lgeos                                                                                                                                                    
/usr/bin/ld: cannot find -lgeos_c

此博文:http://blog.thefrontiergroup.com.au/page/2/提及创建符号链接以解决此问题:

cd /usr/lib
sudo ln -s libgeos-3.3.3.so libgeos.so
sudo ln -s libgeos-3.3.3.so libgeos.so.1

libgeos没有安装到usr / lib,它位于/home/action/local/lib,当我检查该目录时,我看到libgeos.so已经符号链接到libgeos-x.x.x.so。< / p>

如果我将ruby版本切换到1.9.3-p392并运行gem安装线,一切都按计划进行。

在我的MacBook Pro上,我可以rgeoruby 2.0.0-p395成功使用rgeo,但地理库由homebrew安装,因此需要{{1}}路径。

ruby​​ 2.0是否存在影响编译宝石的变化?

我在所有机器上使用RVM

0 个答案:

没有答案