【问题标题】:libxml issue when installing twilio-ruby gem安装 twilio-ruby gem 时的 libxml 问题
【发布时间】:2017-08-16 03:53:04
【问题描述】:

我一直在兜圈子,试图在我的 rails 应用程序中安装“twilio-ruby”gem,但无济于事。每次我尝试捆绑安装时,都会收到有关 libxml 的错误。以下是当我将“twilio-ruby”添加到 gem 文件并尝试捆绑安装时收到的部分错误:

Errno::EACCES: Permission denied @ rb_sysopen - /Users/George/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/libxml-ruby-3.0.0/HISTORY
An error occurred while installing libxml-ruby (3.0.0), and Bundler cannot continue.
Make sure that `gem install libxml-ruby -v '3.0.0'` succeeds before bundling.

Trying to gem install libxml-ruby results in the error below:

ERROR:  While executing gem ... (Errno::EACCES)
    Permission denied @ rb_sysopen - /Users/George/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/libxml-ruby-3.0.0/HISTORY 

任何能指引我正确方向的帮助都将不胜感激。

【问题讨论】:

  • 您尝试gem install libxml-ruby -v '3.0.0 并请包含该命令的结果
  • @FabrizioBertoglio:我已经尝试过了,这是我收到的错误:codeERROR: While execution gem ... (Errno::EACCES) Permission denied @ rb_sysopen - /Users /George/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/libxml-ruby-3.0.0/HISTORYcode

标签: ruby-on-rails ruby twilio libxml2


【解决方案1】:

要正确安装rbenv,请按照 github 上针对您的操作系统(Mac 或 Linux)的说明进行操作

rbenv installation

虽然为了更好地理解这个问题,但它与安全问题有关。 Mac 和 Linux 是基于 Unix 的系统,用户登录并可以在他的主目录~/<user> 上执行命令。如果您尝试执行命令以在另一个目录(如根目录//bin)中运行脚本,您将收到授权错误,您需要使用代表system user dosudo 运行该命令.

因此,在 linux 中,您需要配置 ~/.bash_profile 文件

将 ~/.rbenv/bin 添加到您的 $PATH 以访问 rbenv 命令行实用程序。

$ echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bash_profile Ubuntu 桌面注释:修改你的 ~/.bashrc 而不是 ~/.bash_profile。

Zsh 注意:修改你的 ~/.zshrc 文件而不是 ~/.bash_profile。

这样当用户执行这些命令时,irbgemrakerails

  • 在 PATH 中搜索名为 rake 的可执行文件

  • 在 PATH 的开头找到名为 rake 的 rbenv shim

  • 运行名为 rake 的 shim,然后将命令传递给 rbenv

explanation of shims in rbenv

您也可以通过使用sudo 运行命令来轻松解决此问题,但不建议这样做,因为您也可以从下面的帖子中阅读他们有相同问题但使用rvm

Why do I get a "permission denied" error while installing a gem?

【讨论】:

  • 感谢您的详细回复。今晚我将在我的 Mac 上安装 rbenv。同时,我只是想指出我确实尝试使用 sudo 运行安装,这是它返回的错误的一部分:Could not create Makefile due to some reason, probably lack of necessary libraries and/or headers. Check the mkmf.log file for more details. You may need configuration options.
  • @GeorgeMikhail 你应该找到mkmf.log 看看有什么问题。无论如何,您不应该使用sudomkmf.log 应该保存在 /Users/George/.rbenv..的文件夹内的某个位置。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-08-02
  • 1970-01-01
相关资源
最近更新 更多