我正在尝试使用 Dockerfile 设置 rbenv,但这在rbenv install. 我确实在那里有 ruby-build,它似乎不起作用。
Dockerfile 的相关部分(主要来自https://gist.github.com/deepak/5925003):
# 安装 rbenv 运行 git clone https://github.com/sstephenson/rbenv.git /usr/local/rbenv 运行 echo '#rbenv setup' > /etc/profile.d/rbenv.sh 运行 echo 'export RBENV_ROOT=/usr/local/rbenv' >> /etc/profile.d/rbenv.sh 运行 echo 'export PATH="$RBENV_ROOT/bin:$PATH"' >> /etc/profile.d/rbenv.sh 运行 echo 'eval "$(rbenv init -)"' >> /etc/profile.d/rbenv.sh 运行 chmod +x /etc/profile.d/rbenv.sh # 安装 ruby-build 运行 mkdir /usr/local/rbenv/plugins 运行 git clone https://github.com/sstephenson/ruby-build.git /usr/local/rbenv/plugins/ruby-build ENV 路径 /usr/local/rbenv/shims:/usr/local/rbenv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin # 设置为 Ruby 2.0.0-p247 运行 rbenv 安装 2.0.0-p247 运行 rbenv 重新哈希 运行 rbenv 本地 2.0.0-p247 …
我尝试更新我的 ruby 和 Rails 版本。但我最终遇到了这个错误:
~ ruby -v
/Users/Benjamin/.rbenv/shims/ruby: line 21: /usr/local/Cellar/rbenv/1.1.0/libexec/rbenv:
No such file or directory
Run Code Online (Sandbox Code Playgroud)
我能做些什么来解决这个问题吗?
在阅读了 Ruby gems 并且不知道 rbenv 或 RVM 是什么之后,我想我可能应该拥有两者之一。
我尝试使用 Homebrew 安装 rbenv,但它告诉我我已经安装了 rbenv。我似乎总是在添加 gems 时遇到问题,通常最终使用sudo命令来让它工作(我认为这是一个可怕的想法)。
我发现我在尝试添加 Braintree API gem 时遇到了这些问题,并且在尝试启动服务器时出现错误。
我试过的命令:
gem install "braintree"
bundle install
sudo gem install "braintree"
Run Code Online (Sandbox Code Playgroud)
从运行收到的错误rails server是:
"/config/initializers/braintree.rb:2:in `<top (required)="">': uninitialized constant Braintree::Configuratio (NameError)"
Run Code Online (Sandbox Code Playgroud) 我刚刚从多年的发展与切换RVM到rbenv并有rbenv的一个方面,我似乎无法绕到我的头:
当我在同一版本的 Ruby 下处理多个项目(每个项目都有自己的依赖项),然后停止处理其中一个项目时,如何轻松地从我的gempath(显然是/Users/meltemi/.rbenv/versions/2.1.4/lib/ruby/gems/2.1.0)升级其所有依赖项?
使用 RVM,每个项目都有一个,gemset因此很容易删除它。
使用 rbenv,每个 gem 的每个版本似乎都进入了bundler可以管理它的同一目录。伟大的!但说我经过bundle outdated和bundle update再bundle clean循环项目A,不就是删除所有不从项目B认识宝石,我可能需要在工作当天晚些时候?
或者说我不再想在 ProjectA 上工作并想删除该项目以及与之相关的所有 gem?
也许我以错误的方式接近这个?!?希望有人能让我直截了当,因为关于 rbenv 的其他一切看起来都很简单而且很有意义!
有人可以向我澄清这两行之间的区别吗?
export PATH=./bin:~/.rbenv/bin:$PATH
Run Code Online (Sandbox Code Playgroud)
和
export PATH=./bin:~/.rbenv/bin:$PATH >> ~/.zshrc
Run Code Online (Sandbox Code Playgroud)
这是在做什么?
>> ~/.zshrc
Run Code Online (Sandbox Code Playgroud)
这是写在 .zshrc 文件中的。那里使用哪种语言?我在哪里可以学习语法?出口,评估等。
? rbenv version
system (set by /Users/eric.nguyen/.rbenv/version)
? rbenv local 2.4.2
? gem install bundler
ERROR: While executing gem ... (Gem::FilePermissionError)
You don't have write permissions for the /Library/Ruby/Gems/2.0.0 directory.
? rbenv global 2.4.2
? ruby -v
ruby 2.0.0p648 (2015-12-16 revision 53162) [universal.x86_64-darwin16]
? rbenv version
2.4.2 (set by /Users/eric.nguyen/.ruby-version)
? gem install bundler
ERROR: While executing gem ... (Gem::FilePermissionError)
You don't have write permissions for the /Library/Ruby/Gems/2.0.0 directory.
? gem -v
2.0.14.1
Run Code Online (Sandbox Code Playgroud)
Ruby 版本仍然是 2.0.0p648
我使用的是 macOS Sierra 10.12.6。 …
我安装了 rbenv 并尝试按照此处的说明在 Debian 9 上安装 ruby 1.9.3 https://github.com/rbenv/ruby-build/wiki
Debian 上的 OpenSSL 绑定
由于 Debian(7.5 及更高版本)中的 OpenSSL 不兼容,Ruby 可能无法在不先修补的情况下编译:Run Code Online (Sandbox Code Playgroud)curl -fsSL https://github.com/ruby/ruby/commit/1e7a929c1d44d7a368fbe379211183ac6c972920.patch | \ rbenv install --patch 1.9.3-p484
我得到的回应是
Installing ruby-1.9.3-p484...
patching file ChangeLog
Hunk #1 FAILED at 1.
1 out of 1 hunk FAILED -- saving rejects to file ChangeLog.rej
patching file ext/openssl/ossl_ssl.c
Hunk #1 succeeded at 1985 (offset -244 lines).
BUILD FAILED (Debian 9.4 using ruby-build 20160913)
Run Code Online (Sandbox Code Playgroud)
好吧,更改日志中的更改不需要 ruby 工作,或者当然。然后我发现了这个https://github.com/mathbruyen/computers/blob/master/computers/AspireOne.md
Run Code Online (Sandbox Code Playgroud)curl -fsSL https://github.com/ruby/ruby/commit/1e7a929c1d44d7a368fbe379211183ac6c972920.patch | filterdiff --strip=1 -i …
总是在我运行时brew update出现Ignoring bigdecimal-1.3.2 because its extensions are not built. Try: gem pristine bigdecimal --version 1.3.2警告:
> brew update
Ignoring bigdecimal-1.3.2 because its extensions are not built. Try: gem pristine bigdecimal --version 1.3.2
Ignoring bigdecimal-1.3.2 because its extensions are not built. Try: gem pristine bigdecimal --version 1.3.2
Already up-to-date.
Run Code Online (Sandbox Code Playgroud)
我正在使用 Homebrew v1.7.7(Homebrew/homebrew-core(git 修订版 77cae;最后一次提交 2018-10-19)、Homebrew/homebrew-cask(git 修订版 c95843;最后一次提交 2018-10-19))和 rbenv v1 .1.1.
我已经这样做了gem pristine bigdecimal --version 1.3.2,它说:
> gem pristine bigdecimal --version 1.3.2
ERROR: While executing …Run Code Online (Sandbox Code Playgroud) 我使用 Ruby 2.7.1 创建了一个新的 Rails 应用程序 (v5.2.4.3),并发现了此版本中流行的“关键字参数”警告暴风雪。
rbenv install --list出于某种原因,没有列出 2.4.0 之后的 Ruby 版本。我已经手动安装了 2.6.6,但无法启动它。
这似乎是一个简单的问题。提示?
当尝试使用 rbenv 安装新的 ruby 版本时,我在 Mac OS 上不断遇到构建失败:
trevoraron@Trevor-Aron api % rbenv install 2.6.7
Downloading ruby-2.6.7.tar.bz2...
-> https://cache.ruby-lang.org/pub/ruby/2.6/ruby-2.6.7.tar.bz2
Installing ruby-2.6.7...
ruby-build: using readline from homebrew
BUILD FAILED (macOS 12.3.1 using ruby-build 20220426)
Inspect or clean up the working tree at /var/folders/pk/y07ms18x3l98w09j6dj4p_680000gn/T/ruby-build.20220606121206.1319.GLeYbo
Results logged to /var/folders/pk/y07ms18x3l98w09j6dj4p_680000gn/T/ruby-build.20220606121206.1319.log
Last 10 log lines:
219 warnings generated.
193 warnings generated.
201 warnings generated.
384 warnings generated.
219 warnings generated.
306 warnings generated.
201 warnings generated.
271 warnings generated.
217 warnings generated.
261 warnings generated.
Run Code Online (Sandbox Code Playgroud)
我在 …