正在使用的操作系统:Mac OS High Sierra 版本:10.13.6
我安装了具有以下Ruby版本的RVM:
MAC-070618-A:website anujaw$ rvm list
ruby-1.8.7-head [ i686 ]
ruby-1.8.7-p358 [ i686 ]
=> ruby-1.8.7-p374 [ i686 ]
* ruby-2.3.7 [ x86_64 ]
ruby-2.4.0 [ x86_64 ]
# => - current
# =* - current && default
# * - default
我需要在机器上本地运行应用程序的Ruby版本是:ruby-1.8.7-p374
我正在尝试做一个bundle install
并遇到以下错误:
/System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/lib/ruby/2.3.0/rubygems.rb:241:in `bin_path': can't find gem bundler (>= 0.a) (Gem::GemNotFoundException)
from /usr/local/bin/bundle:22:in `<main>'
当我按以下方式进行gem install bundler
时,会出现错误:
MAC-070618-A:website anujaw$ gem install bundler -v 1.17.3
ERROR: Loading command: install (LoadError)
no such file to load -- openssl
ERROR: While executing gem ... (NoMethodError)
undefined method `invoke_with_build_args' for nil:NilClass
我已经安装了OpenSSL,请参见下文:
MAC-070618-A:website anujaw$ brew info openssl
openssl: stable 1.0.2q (bottled) [keg-only]
SSL/TLS cryptography library
https://openssl.org/
/usr/local/Cellar/openssl/1.0.2o_2 (1,792 files, 12.3MB)
Poured from bottle on 2018-07-23 at 14:37:12
/usr/local/Cellar/openssl/1.0.2q (1,794 files, 12.1MB)
Poured from bottle on 2019-01-30 at 14:12:51
From: https://github.com/Homebrew/homebrew-core/blob/master/Formula/openssl.rb
==> Caveats
A CA file has been bootstrapped using certificates from the SystemRoots
keychain. To add additional certificates (e.g. the certificates added in
the System keychain), place .pem files in
/usr/local/etc/openssl/certs
and run
/usr/local/opt/openssl/bin/c_rehash
openssl is keg-only, which means it was not symlinked into /usr/local,
because Apple has deprecated use of OpenSSL in favor of its own TLS and crypto libraries.
If you need to have openssl first in your PATH run:
echo 'export PATH="/usr/local/opt/openssl/bin:$PATH"' >> ~/.bash_profile
For compilers to find openssl you may need to set:
export LDFLAGS="-L/usr/local/opt/openssl/lib"
export CPPFLAGS="-I/usr/local/opt/openssl/include"
For pkg-config to find openssl you may need to set:
export PKG_CONFIG_PATH="/usr/local/opt/openssl/lib/pkgconfig"
==> Analytics
install: 465,985 (30 days), 1,553,385 (90 days), 6,076,848 (365 days)
install_on_request: 59,235 (30 days), 217,436 (90 days), 854,397 (365 days)
build_error: 0 (30 days)
请告知如何克服这一障碍?谢谢。
答案 0 :(得分:0)
因此,我能够通过参考以下链接来解决此错误:
How to set correct Ruby version in gem environment
主要问题是我的Ruby gem(2.0.17)与ruby 1.8.7(2013-06-27补丁程序374)不兼容 以下是我执行的步骤: 仅在下载RubyGems 1.6.2之后,按照说明进行解压缩,如
所以:
curl -O https://rubygems.org/rubygems/rubygems-1.6.2.tgz
然后解压缩下载的文件;
要使用tar提取.tgz文件,
tar -xvzf /path/to/yourfile.tgz
cd rubygems-1.6.2
rvm ruby-1.8.7-p374
ruby setup.rb
gem update --system 1.8.25
然后,运行gem env
以检查您的RubyGems环境。希望可以,然后运行gem install bundler -v 1.17.3
答案 1 :(得分:0)
我已经遇到了这个问题,我通过以下方法解决了
gem update --system
答案 2 :(得分:0)
尝试运行这些命令解决问题。
sudo gem install -n / usr / local / bin捆绑程序-v 1.17.3
然后,安装Ruby依赖项
捆绑安装