嘗試使用以下命令行MacPorts如何安裝軟件包?我如何激活通過MacPorts完成的Ruby安裝?
sudo port install ruby19
我的機器(PPC,Mac OSX版10.5.7)上安裝ruby19後紅寶石的版本並沒有改變
ruby -v => ruby 1.8.6 (2008-08-11 patchlevel 287) [universal-darwin9.0]
我認爲我有它在我的Mac上安裝了兩個版本,但我現在如何使用最新版本?
嘗試使用以下命令行MacPorts如何安裝軟件包?我如何激活通過MacPorts完成的Ruby安裝?
sudo port install ruby19
我的機器(PPC,Mac OSX版10.5.7)上安裝ruby19後紅寶石的版本並沒有改變
ruby -v => ruby 1.8.6 (2008-08-11 patchlevel 287) [universal-darwin9.0]
我認爲我有它在我的Mac上安裝了兩個版本,但我現在如何使用最新版本?
要使用特定的ruby版本,如果你有兩個版本安裝你可以指定一個你想要的絕對路徑。例如。 /你/路徑/到/ Ruby或者你可以改變你的PATH在.profile
設置,您可以鍵入
which ruby
看到的路徑是目前使用的紅寶石可執行文件。
使用
echo $PATH
你可以看到當前的PATH設置。你必須在PATH中添加新的ruby二進制文件的路徑,以便在另一個之前找到它。
由於阿亞茲已經提到,你的東西MacPorts的默認位置是在/ opt /地方。如果您在路徑前添加/ opt/local/bin,它應該沒問題。 (確保在更改後啓動一個新的終端窗口 - 除非您明確地再次輸入.profile文件,否則它們將不會在當前會話中被拾取)
請注意一點:在預先設置/ opt/local/bin到你的路徑shell將總是更喜歡那裏的二進制文件到後面找到的二進制文件,如果你依賴於/ bin,/ sbin或/ usr/sbin中的特定版本,這可能是一個問題 - 這取決於你的情況,這意味着你不應該這樣做(如果你的計算機正在處理敏感數據和/或銀行或其他東西),或者只是必須記住它可能是一個問題(如果你的計算機是一個普通的開發機器)。
見http://www.tech-recipes.com/rx/2621/os_x_change_path_environment_variable/如果您需要關於如何設置PATH在OSX一些更多的提示。
我傾向於認爲macports
通常可以把它所有的東西/opt/local
目錄內。我正在使用Leopard,並將其放在該目錄中。您可能希望在那裏尋找,特別是在/opt/local/bin
之內,以查找您正在尋找的ruby
二進制文件。
只是關於MacPorts的快速說明。 Ayaz是正確的,默認情況下,MacPorts將安裝/opt/local。 (這樣便於以後全局卸載,如果你願意,它不斷的MacPorts包出來的OS X包的方式。)
當您安裝使用MacPorts,它通常會編輯$PATH
(和你的$MANPATH
)爲你通過更新你的用戶的.profile(創建它,如果它不存在的話)。
作爲預防措施,安裝程序會創建原始的備份。配置文件以防您想要回滾更改(或者您以後完全卸載MacPorts)。這是來自工作中的隨機機器的一個例子。
admin ~ $ ls .profile*
.profile .profile.macports-saved_2009-08-03_at_14:55:56
如果您在看的.profile你應該看到這樣的事情:
##
# Your previous /Users/admin/.profile file was backed up as /Users/admin/.profile.macports-saved_2009-08-03_at_14:55:56
##
# MacPorts Installer addition on 2009-08-03_at_14:55:56: adding an appropriate PATH variable for use with MacPorts.
export PATH=/opt/local/bin:/opt/local/sbin:$PATH
# Finished adapting your PATH environment variable for use with MacPorts.
# MacPorts Installer addition on 2009-08-03_at_14:55:56: adding an appropriate MANPATH variable for use with MacPorts.
export MANPATH=/opt/local/share/man:$MANPATH
# Finished adapting your MANPATH environment variable for use with MacPorts.
如果你的$ PATH 沒有被更新了,你應該調整它,否則,您將無法使用port
工具和通過MacPorts安裝的軟件。
默認情況下,在MacPorts的紅寶石1.9端口安裝在/opt/local/bin/ruby1.9
Ruby的二進制文件。它附加了一個1.9
來避免重複使用Ruby 1.8.7庫和寶石,因爲並不是所有的寶石都與1.9兼容。所以,你要推出的Ruby 1.9與ruby1.9
(和irb1.9
等)
如果你不希望有這樣做,你有兩個選擇:
ruby
到ruby1.9
在你的shell配置文件。+nosuffix
變種安裝Ruby 1.9的端口。然而,要注意的是,如果您通過使用MacPorts安裝了Ruby 1.8,通過MacPorts的不1.9
後綴安裝Ruby 1.9可能會導致衝突(寶石等)。來添加一個別名另一種方法是在你的主文件夾中創建「bin」目錄,並在那裏創建鏈接到macport紅寶石'LN -s /opt/local/bin/ruby1.9 ruby'和寶石'LN -s /opt/local/bin/gem1.9 gem'然後,源這首先在你的路徑'出口PATH =〜/斌:$ PATH'。這樣做的好處是它可以讓MacVim選擇正確的Ruby版本(它不識別別名,只有$ PATH)。 – atomicules 2011-08-26 22:43:54
使用'+ nosuffix'變體的方法,已經由新的MacPorts語法取代(如V2.1.3的):'端口選擇--set紅寶石ruby19'。這應該適用於任何有多個「版本」的軟件包,儘管看起來軟件包的維護者需要單獨實現對它的支持。 'select'命令設置哪些版本不帶後綴('/ opt/local/bin/ruby',而不是'/ opt/local/bin/ruby19')。 – beporter 2013-04-12 19:53:52
thx的信息,我認爲macports已經爲我做了這些東西,因爲當我查找它的名稱時,使用ruby 1.9就像在「ruby1.9 ...」中鍵入終端 出口PATH = /選擇/ local/bin目錄中:/ opt/local/sbin中:$ PATH – 2009-08-26 11:24:22