我想构建并尝试这个github项目https://github.com/cmedley/terraforming
我已经通过在github存储库中运行gem
脚本,将软件包(或setup
?道歉,我不熟悉正确的Ruby术语)安装到另一个位置:
./script/setup --path ../bin
我可以看到主脚本terraforming
已安装在bin
下。在这种情况下,路径为bin/ruby/2.3.0/bin/terraforming
。
但是,当我运行它时,出现此错误:
/System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/lib/ruby/2.3.0/rubygems.rb:241:in
bin_path': can't find gem terraforming (>= 0.a) (Gem::GemNotFoundException) from ../bin/ruby/2.3.0/bin/terraforming:22:in
'
从备用安装位置调用此terraforming
脚本的正确方法是什么。
答案 0 :(得分:3)
您可能仍然需要gem install terraforming
来安装gem。
script/setup
仅安装依赖项-您可以在its code中看到它仅运行bundle install
,这会将宝石安装在随附的gemfile中。该gemfile不包含terraforming
gem本身,因为它希望您独立执行此操作。
答案 1 :(得分:2)
您使用哪种应用程序?铁轨?锡纳特拉?它有gemfile
吗?如果是这样,您应该能够显式设置gem的路径:
gem 'terraforming', path: '/bin/ruby/2.3.0/bin/terraforming'
对于命令行实用程序,您需要使用$LOAD_PATH
包含gem的路径。您可以阅读Ruby docs about requiring code或在StackOverflow上找到其他可能有用的答案,例如this one和this one。