【发布时间】:2023-01-12 06:28:41
【问题描述】:
我不是 Ruby 用户,所以这可能是一个 101 问题。我只是想使用一个恰好用 Ruby 编写的实用程序。
我正在使用 tilemaker,这是 openstreetmap 生态系统中的一个实用程序。它以 mbtiles 格式创建图块。该存储库附带一个简单的实用程序,用于在浏览器上提供磁贴以测试您创建的文件。这个实用程序是用 Ruby 编写的,这是我遇到的问题。
repo 的自述文件包含服务器实用程序的说明。安装说明如下:
(如果您还没有它们,则需要安装 Ruby 和运行演示服务器所需的 gem。例如,在 Ubuntu 上,
sudo apt install sqlite3 libsqlite3-dev ruby ruby-dev,然后是sudo gem install sqlite3 cgi glug rack。)我在使用 Debian 11(在 Qubes 上,所以我不介意按照他们的建议运行 sudo gem install)。我希望这与 Ubuntu 足够接近,但也许这与问题有关。
这就是我得到的:
$ ruby server.rb ~/countries-raster.mbtiles Starting local server Traceback (most recent call last): 3: from server.rb:22:in `<main>' 2: from server.rb:118:in `<class:MapServer>' 1: from /usr/lib/ruby/vendor_ruby/rubygems/core_ext/kernel_require.rb:85:in `require' /usr/lib/ruby/vendor_ruby/rubygems/core_ext/kernel_require.rb:85:in `require': cannot load such file -- rack/handler (LoadError)我在这里错过了什么?谢谢。
【问题讨论】:
-
您缺少
rackgem(可能还有其他那些 gem),但不确定为什么他们告诉您以sudo运行它。我会先尝试相同的命令,例如gem install sqlite3 cgi glug rack
标签: ruby openstreetmap rack mbtiles