【问题标题】:How to fix a broken Ruby config如何修复损坏的 Ruby 配置
【发布时间】:2020-04-30 02:07:23
【问题描述】:

我使用的是 MacOs High Sierra 10.13.6。 bundle install 不再起作用。多年来,我一直在使用捆绑器在这台机器上运行快车道。我最近安装了其他软件,我想我犯了一个错误并破坏了配置。

我有以下 Gemfile:

来源“https://rubygems.org

gem 'fastlane', '2.120.0'
gem 'aws-sdk', '2.10.8'
gem 'awscli', '0.2.8'
gem 'rake', '12.0.0'
gem 'danger', '5.4.3'

plugins_path = File.join(File.dirname(__FILE__), 'fastlane', 'Pluginfile')
eval(File.read(plugins_path), binding) if File.exist?(plugins_path)

当我尝试运行 bundle install 时出现错误:

错误:无法发现 libxml2 在您的系统上的位置。请确保已安装pkg-config

安装 nokogiri (1.8.2) 和 Bundler 时出错 无法继续。确保 gem install nokogiri -v '1.8.2' --source 'https://rubygems.org/' 在捆绑之前成功。

如果我跑步:

gem install nokogiri -v '1.8.2'

gem install nokogiri -v 1.8.2 -n /usr/local/bin -- --use-system-libraries

我得到错误:

错误:执行 gem 时 ... (Errno::EACCES) 权限被拒绝 @ rb_sysopen - /Library/Ruby/Gems/2.3.0/gems/nokogiri-1.8.2/.autotest

我已尝试更改文件夹的权限并运行:

gem install pkg-config -n /usr/local/bin -- --use-system-libraries
gem install nakogiri -v 1.8.2 -n /usr/local/bin -- --use-system-libraries

正如我也运行过的错误消息之一所建议的那样:

bundle config build.nokogiri --use-system-libraries

在这种情况下,这些命令成功,但 bundle install 仍然失败并出现同样的错误。

【问题讨论】:

  • 在 macOS 上摆弄系统 Ruby 并不是一个好主意。使用版本管理器(如下面你自己的答案所示)——一旦你习惯了——会容易得多,尤其是在处理不同的项目/要求时。

标签: ruby macos rubygems rvm bundler


【解决方案1】:

我安装了rvm。 然后在我附加的.zshrc 文件中:

[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm"

然后我运行:

rvm reinstall all --force

现在它正在工作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-04
    • 1970-01-01
    • 1970-01-01
    • 2010-09-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多