簡體   English   中英

在OS X中運行gem時出現問題

[英]Problem running gems in OS X

我正在運行Snow Leopard,並根據此處的指南安裝了定制的Ruby: http : //hivelogic.com/articles/compiling-ruby-rubygems-and-rails-on-snow-leopard 我的紅寶石二進制文件位於usr / local / bin / ruby​​中,我的gems安裝在/ usr / local / bin / gem中。 我的gem env看起來像這樣:

Ruby版本:1.8.7(2008-08-11補丁程序級別72)[universal-darwin10.0]-安裝目錄:/Library/Ruby/Gems/1.8-RUBY EXECUTABLE:/System/Library/Frameworks/Ruby.framework/Versions /1.8/usr/bin/ruby-執行目錄:/ usr / bin

我想我可能對安裝感到厭煩,因為對gems采取的所有操作都會產生錯誤:

錯誤:執行gem時...(Errno :: EEXIST)文件存在-/ usr / local / bin / ruby

如何編輯gem環境的環境變量? 對於使用OS X並使用ruby和gems的用戶,您使用什么來使自己啟動並運行? 我正在考慮只是一切,重新開始。

看來將ruby安裝到/ usr / local / bin並不是您要獲取的ruby,這可能意味着/ usr / local / bin /不在您的PATH中。 如果您想運行該Ruby,請嘗試編輯.bash_profile以添加/ usr / local / bin,如下所示:

導出PATH = / usr / local / bin:$ PATH

或者,您可以在/etc/paths.d中將路徑添加到文件,這是在OS X系統上全局添加路徑的首選方法。


我嘗試了三種不同方式的事情,每種方式都有不同的結果。 我的系統具有默認安裝(/ usr / bin),手工構建的/ usr / local / bin以及/ opt / local / bin中的Mac端口。

到目前為止,最簡單的方法是僅使用內置二進制文件,在10.6.2上為ruby 1.8.7。 在該方案中,gem安裝在/ Library / Ruby / Gems中。 第二個最簡單的是MacPorts(sudo port install ruby​​),第三個是您在上面描述的完全來自源代碼的方法。 人們從源代碼安裝當然有充分的理由,但是除非您嘗試運行ruby 1.9或其他版本,否則最好使用內置的ruby 1.8.7。

命令“ gem env”是否不報告任何gem路徑? 我的礦山報告了許多寶石路線以及紅寶石等版本,但您似乎沒有這樣做。

RubyGems Environment:
  - RUBYGEMS VERSION: 1.3.5
  - RUBY VERSION: 1.8.7 (2008-08-11 patchlevel 72) [universal-darwin10.0]
  - INSTALLATION DIRECTORY: /Library/Ruby/Gems/1.8
  - RUBY EXECUTABLE: /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby
  - EXECUTABLE DIRECTORY: /usr/bin
  - RUBYGEMS PLATFORMS:
    - ruby
    - universal-darwin-10
  - GEM PATHS:
     - /Library/Ruby/Gems/1.8
     - /Users/steveweet/.gem/ruby/1.8
     - /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/gems/1.8
  - GEM CONFIGURATION:
     - :update_sources => true
     - :verbose => true
     - :benchmark => false
     - :backtrace => false
     - :bulk_threshold => 1000
  - REMOTE SOURCES:
     - http://gems.rubyforge.org/

您可以通過在外殼啟動文件中指定與gem關聯的環境變量來編輯(bash為.bashrc)。 所有相關變量都列在gem網站的環境頁面中。 您將需要特別注意GEM_HOME和GEM_PATH。 您可以通過在外殼配置文件中鍵入echo $ GEM_HOME來檢查這些設置的當前設置。

我建議您此時最好的操作可能是返回到OS / X隨附的默認ruby安裝,然后下載並安裝rvm(Ruby版本管理器) ,然后觀看Ryan Bates截屏

暫無
暫無

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

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