簡體   English   中英

MacOS:嘗試安裝 Rails 時出現 Ruby LoadError

[英]MacOS: Ruby LoadError when trying to install Rails

我已經嘗試過用谷歌搜索所有內容; 不要只指出我在 Google 搜索相同錯誤時獲得的前幾個結果。

這是我嘗試過的: ruby 2.0 rails gem install error "cannot load such file -- openssl"

當我嘗試執行gem install rails時,出現此錯誤。 坦率地說,當我嘗試gem install任何東西時就會發生這種情況。

ERROR:  Loading command: install (LoadError)
        cannot load such file -- openssl
ERROR:  While executing gem ... (NoMethodError)
    undefined method `invoke_with_build_args' for nil:NilClass

Also, I should have Ruby 2.7.1 installed (I've installed it multiple times with brew , rbenv , and rvm ), but when I do ruby -v it always returns ruby 2.3.7p456 (2018-03-28 revision 63024) [universal.x86_64-darwin18] 我在某處讀到任何 Ruby 版本 < 2.4 與 OpenSSL 1.1 不兼容。 我需要 Ruby > 2.4.4 來安裝導軌。

這是我的寶石環境

[14:21:23] jasper.huang ruby-2.7.1 gem env
RubyGems Environment:
  - RUBYGEMS VERSION: 3.1.2
  - RUBY VERSION: 2.7.1 (2020-03-31 patchlevel 83) [x86_64-darwin18]
  - INSTALLATION DIRECTORY: /usr/local/lib/ruby/gems/2.7.0
  - USER INSTALLATION DIRECTORY: /Users/jasper.huang/.gem/ruby/2.7.0
  - RUBY EXECUTABLE: /usr/local/bin/ruby
  - GIT EXECUTABLE: /usr/bin/git
  - EXECUTABLE DIRECTORY: /usr/local/bin
  - SPEC CACHE DIRECTORY: /Users/jasper.huang/.gem/specs
  - SYSTEM CONFIGURATION DIRECTORY: /usr/local/etc
  - RUBYGEMS PLATFORMS:
    - ruby
    - x86_64-darwin-18
  - GEM PATHS:
     - /usr/local/lib/ruby/gems/2.7.0
     - /Users/jasper.huang/.gem/ruby/2.7.0
  - GEM CONFIGURATION:
     - :update_sources => true
     - :verbose => true
     - :backtrace => false
     - :bulk_threshold => 1000
  - REMOTE SOURCES:
     - https://rubygems.org/
  - SHELL PATH:
     - /Users/jasper.huang/Documents/School/USC/SPRING20/CSCI310/Project2/google-cloud-sdk/bin
     - /Library/Frameworks/Python.framework/Versions/3.7/bin
     - /usr/local/CrossPack-AVR/bin
     - /Library/Frameworks/Python.framework/Versions/3.5/bin
     - /usr/local/bin
     - /usr/bin
     - /bin
     - /usr/sbin
     - /sbin
     - /usr/local/share/dotnet
     - /opt/X11/bin
     - ~/.dotnet/tools
     - /Library/Frameworks/Mono.framework/Versions/Current/Commands
     - /usr/local/CrossPack-AVR/bin
     - /Applications/Xamarin Workbooks.app/Contents/SharedSupport/path-bin
     - /Users/jasper.huang/.rvm/bin

我最近遇到了這個問題,問題是 ruby 命令使用核心默認 ruby 安裝(即 2.3)而不是 rvm ruby 版本。 我不確定這是怎么發生的,但我在安裝“ohmyzsh”插件后遇到了這個問題。 這又是一個猜測,我不能 100% 確定這個插件是否導致了這個問題。 所以,我不得不卸載插件並重新安裝 rvm 和 openssl package。 然后,按照您共享的鏈接中的建議,安裝 ruby 版本,其中 openssl 目錄作為參數。

您也可以使用系統安裝的 openssl 目錄為好。 在安裝 gem '-- --with-opt-dir=/usr/local/opt/openssl' 時也可以嘗試使用這個參數。 該路徑應為您機器上的 openssl 安裝目錄。

您需要通過檢查安裝在 rvm 中的 ruby 是否已在您的機器中激活來確保您有 rvm 並且 ruby 已安裝並且工作正常。 我希望這會有所幫助,如果您有任何進一步的疑問,請告訴我。 謝謝你。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM