标签: rbenv

rbenv:从主目录安装 ruby

我正在尝试在 Ubuntu 14.04 上安装 Ruby + Rails。我需要多个用户才能访问 Ruby,因此我在/opt/.rbenv目录中安装了带有 ruby​​-build 的 rbenv。是对的吗?

如果我尝试使用以下命令安装 Ruby 版本

rbenv install 2.1.3
Run Code Online (Sandbox Code Playgroud)

它安装在~/username/.rbenv/versions,而不是在/opt/.rbenv/versions

我不想让第二个用户访问其他用户的主目录。

如何安装 Ruby /opt/.rbenv?或者还有其他解决方案吗?

ruby ruby-on-rails rbenv ubuntu-14.04

2
推荐指数
1
解决办法
2556
查看次数

无法加载“撬”-“要求”:无法加载此类文件-撬(LoadError)

我正在尝试调试一个简单的 ruby​​ 控制台脚本,但在尝试要求 pry 时出现加载错误:

  • 我正在使用 rbenv 来管理环境。
  • 我正在使用 Ruby 版本:2.3.1。
  • 尝试使用 Pry '~> 0.10.4'

/Users/gangelo/.rbenv/versions/2.3.1/lib/ruby/site_ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:in `require': 无法加载此类文件——撬(LoadError)

我过去在 Rails 应用程序中使用过 Pry 和 Byebug,从来没有遇到过这样的问题。在寻找解决方案时,我发现大多数问题都与在 Gemfile 中不包含 Pry 或在 Gem 文件的正确环境中不包含 Pry gem 相关;这不是我的情况,我做错了什么?

# /Gemfile
group :development, :test do
  gem 'pry', '~> 0.10.4'
end
Run Code Online (Sandbox Code Playgroud)

在我的脚本中:

# /calculator/rpn_calculator_service.rb
module RealPage
  module Calculator
    # Provides Reverse Polish Notation computation services.
    class RPNCalculatorService < CalculatorService
      include Helpers::Arrays

      def initialize
        super RPNInputParser.new
      end

      def compute(input)
        # Load error here :(
        require 'pry'; binding.pry
        # …
Run Code Online (Sandbox Code Playgroud)

ruby pry rbenv binding.pry

2
推荐指数
1
解决办法
1万
查看次数

任务未选择正确的 ruby​​ 版本的问题

这个问题的出现取决于我正在处理的 Ruby 项目。VSCode 任务通常不会从正确的rbenvRuby 版本运行。有时,如果我先从集成终端手动运行命令,然后运行代码任务,它会选择正确的 Ruby。

示例 VSCode 任务,

{
  "version": "2.0.0",
  "tasks": [
    {
      "label": "Run All Tests",
      "type": "shell",
      "command": "bin/rails test",
      "group": "test",
      "presentation": {
        "reveal": "always",
        "panel": "shared"
      }
    }
  ]
}
Run Code Online (Sandbox Code Playgroud)

当从项目目录(或任何其他方式)启动代码时,如果我运行此任务,它将从系统 ruby​​ 的上下文运行。但是,如果我打开集成终端并输入bin/rails test(有效),然后再次运行该任务,它将在正确的rbenvshimed ruby​​ 上下文中运行。

然而,启动调试器会话确实可以在正确的 Ruby 上下文中工作,所以我真的不明白错过了什么。

ruby rbenv visual-studio-code

2
推荐指数
1
解决办法
1052
查看次数

rbenv 没有 ruby​​ 版本并且 ruby​​-build plugs 目录不存在,怎么办?

rbenv 不显示较新版本的 Ruby。
各种指南都说要更新 ruby​​ build,但我没有在我的安装中设置 ruby​​-build 目录来执行此操作。

我该怎么办?

ruby rbenv ruby-build

2
推荐指数
1
解决办法
541
查看次数

为什么 rbenv 在 Mac OS Catalina 上不起作用

我正在尝试运行一个 Ruby on Rails 项目,该项目的版本2.4.1和我的系统是2.6.x. 我所做的是通过 Rbenv 安装旧版本的 Ruby 然后我执行了以下命令:

rbenv global 2.4.1 -> to change global Ruby version

ruby -v 
ruby 2.6.5p114

rbenv global
2.4.1
Run Code Online (Sandbox Code Playgroud)

所以有问题,因为我想使用 2.4.1 但似乎不起作用。我无法启动捆绑包,因为它说我没有安装 2.4.1。

我需要一个 Mac OS Catalina 的解决方案,就像我在网上找到的那样,但没有任何效果并且无法启动该项目。

ruby ruby-on-rails rbenv

2
推荐指数
1
解决办法
2228
查看次数

构建失败(Ubuntu 20.04 使用 ruby​​-build 20210119)

我正在使用 rbenv 并在 Ec2 实例中尝试安装 ruby​​ 不同版本,但是当我执行

rbenv install 2.7.2
Run Code Online (Sandbox Code Playgroud)

出现以下错误。

Downloading ruby-2.7.2.tar.bz2...
-> https://cache.ruby-lang.org/pub/ruby/2.7/ruby-2.7.2.tar.bz2
Installing ruby-2.7.2...

BUILD FAILED (Ubuntu 20.04 using ruby-build 20210119)

Inspect or clean up the working tree at /tmp/ruby-build.20210217075101.162094.zs1iDJ
Results logged to /tmp/ruby-build.20210217075101.162094.log

Last 10 log lines:
compiling mjit.c
compiling mjit_compile.c
compiling node.c
compiling numeric.c
compiling object.c
compiling pack.c
compiling parse.c
gcc: fatal error: Killed signal terminated program cc1
compilation terminated.
make: *** [Makefile:421: parse.o] Error 1
Run Code Online (Sandbox Code Playgroud)

同时,我的系统使用默认的 ruby​​ 版本

  ubuntu@ip-112-34-9-342:~$ rbenv versions
 * system (set …
Run Code Online (Sandbox Code Playgroud)

ruby ruby-on-rails amazon-ec2 rbenv ruby-2.7

2
推荐指数
1
解决办法
2724
查看次数

在 Mac 上安装 Ruby 2.6.6 或 2.6.7

最近,我一直在尝试在本地工作区上开发 Rails 项目。我刚刚更换了笔记本电脑(Macbook pro M1),从那时起,我一直无法安装 Ruby 2.6.6 和/或 2.6.7。这是我运行时的错误输出rbenv install 2.6.6

Last 10 log lines:
compiling ../.././ext/psych/yaml/dumper.c
compiling ../.././ext/psych/yaml/reader.c
compiling ../.././ext/psych/yaml/emitter.c
compiling ../.././ext/psych/yaml/parser.c
linking shared-object date_core.bundle
5 warnings generated.
linking shared-object zlib.bundle
1 warning generated.
linking shared-object psych.bundle
make: *** [build-ext] Error 2
Run Code Online (Sandbox Code Playgroud)

然后我检查了 rbenv install --list,它列出了 2.5.9、2.6.7、2.7.3 和 3.0.1。因此,我尝试安装 2.6.7,但这也不起作用。显然,Ruby 2.6.7 的安装是一个已知错误,目前尚未修复(link1link2)。

如果有人有解决此问题的经验,请告诉我一些解决方案。我一整天都被这个错误困扰,我非常绝望:(。

ruby homebrew ruby-on-rails rbenv

2
推荐指数
1
解决办法
1万
查看次数

构建失败(macOS 11.4 使用 ruby​​-build 20210526)-MacBook Air(M1,2020)-rbenv install 2.xx

我在安装 (2.7.2) 以外的任何其他 ruby​​ 版本时遇到问题。有没有人有任何提示?大苏尔。

ruby rbenv

2
推荐指数
1
解决办法
860
查看次数

rbenv 和苹果 m1。安装 ruby​​ 3.2、2.7 和 2.6 失败

我无法使用 rbenv 安装任何 ruby​​ 版本。我尝试了 2.6.10 2.7.7 或 3.2.0 。

\n

这是我执行时遇到的错误:

\n
\xe2\x9d\xaf rbenv install 3.2.0\nTo follow progress, use 'tail -f /var/folders/4v/kyv3nw1s7lq8s7lz7r6djvsr0000gn/T/ruby-build.20230125170342.85553.log' or pass --verbose\nDownloading openssl-3.0.7.tar.gz...\n-> https://dqw8nmjcqpjn7.cloudfront.net/83049d042a260e696f62406ac5c08bf706fd84383f945cf21bd61e9ed95c396e\nInstalling openssl-3.0.7...\nInstalled openssl-3.0.7 to /Users/idanahal/.rbenv/versions/3.2.0\n\nDownloading ruby-3.2.0.tar.gz...\n-> https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.0.tar.gz\nInstalling ruby-3.2.0...\nruby-build: using readline from homebrew\nruby-build: using gmp from homebrew\n\nBUILD FAILED (macOS 13.1 using ruby-build 20221225)\n\nInspect or clean up the working tree at /var/folders/4v/kyv3nw1s7lq8s7lz7r6djvsr0000gn/T/ruby-build.20230125170342.85553.VSOgmw\nResults logged to /var/folders/4v/kyv3nw1s7lq8s7lz7r6djvsr0000gn/T/ruby-build.20230125170342.85553.log\n\nLast 10 log lines:\ncompiling ossl_x509ext.c\ncompiling ossl_x509name.c\ncompiling ossl_x509req.c\ncompiling ossl_x509revoked.c\ncompiling ossl_x509store.c\ninstalling default openssl libraries\nlinking shared-object date_core.bundle\nlinking shared-object openssl.bundle\nlinking shared-object ripper.bundle\nmake: *** [build-ext] Error …
Run Code Online (Sandbox Code Playgroud)

ruby rbenv ruby-3

2
推荐指数
1
解决办法
9557
查看次数

由于心理YAML解析错误,在mac osx上安装任何ruby 1.9.x(使用rbenv)时遇到问题

我试图让rvm卸载,以便在我的Mac上使用rbenv.一切正常,直到红宝石发挥作用..

使用时

rbenv install 1.9.3-p194
Run Code Online (Sandbox Code Playgroud)

它正确编译它,但在那之后我想安装bundler ..这会产生以下错误

computer:~ computer$ gem install bundler
/Users/computer/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/psych.rb:203:in `parse': (<unknown>): mapping values are not allowed in this context at line 1 column 34 (Psych::SyntaxError)
    from /Users/computer/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/psych.rb:203:in `parse_stream'
    from /Users/computer/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/psych.rb:151:in `parse'
    from /Users/computer/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/psych.rb:127:in `load'
    from /Users/computer/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/rubygems/config_file.rb:253:in `load_file'
    from /Users/computer/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/rubygems/config_file.rb:191:in `initialize'
    from /Users/computer/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/rubygems/gem_runner.rb:78:in `new'
    from /Users/computer/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/rubygems/gem_runner.rb:78:in `do_configuration'
    from /Users/computer/.rbenv/versions/1.9.3-p194/lib/ruby/1.9.1/rubygems/gem_runner.rb:51:in `run'
    from /Users/computer/.rbenv/versions/1.9.3-p194/bin/gem:21:in `<main>'
Run Code Online (Sandbox Code Playgroud)

然后我尝试安装旧版本的ruby 1.9.3-p125 ..但是,即使是构建也不会完成类似的错误,也依赖于这个心理翻译...... :(

computer-2:~ computer$ rbenv install 1.9.3-p125
Downloading http://pyyaml.org/download/libyaml/yaml-0.1.4.tar.gz...
Installing yaml-0.1.4...
Installed yaml-0.1.4 to /Users/computer/.rbenv/versions/1.9.3-p125
Downloading http://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.3-p125.tar.gz...
Installing ruby-1.9.3-p125...
Installed ruby-1.9.3-p125 to …
Run Code Online (Sandbox Code Playgroud)

ruby macos psych rbenv

1
推荐指数
2
解决办法
5528
查看次数