4

我在 Mac OS (10.8.4) 上,所以安装了系统版本的 ruby​​ (1.8.7)。我知道我无法删除它,因为我的系统需要它。不过,我有兴趣通过 Octopress 在 GitHub 上建立一个 Jekyll 博客:http: //octopress.org。它需要 ruby​​ 版本 1.9.3,所以我通过添加它

rbenv install 1.9.3-p385

它似乎奏效了(几个小时后才意识到我必须通过macports卸载旧版本的葡萄酒)。但是,当我跑步时

localhost:~ Dan$ ruby -v

我明白了

ruby 1.9.3p392 (2013-02-22 revision 39386) [x86_64-darwin12.4.0]

我曾经得到

ruby 1.8.7 (2012-02-08 patchlevel 358) [universal-darwin12.0]

但后来我跑了

git clone git://github.com/imathis/octopress.git octopress
localhost:~ Dan$ cd octopress

并得到

ruby-1.9.3-p448 is not installed.
To install do: 'rvm install ruby-1.9.3-p448'

我使用的是 rbenv 而不是 rvm (但如果它有所作为,我愿意切换)。现在我运行:

localhost:octopress Dan$ env CC=gcc rbenv install 1.9.3-p448
Downloading yaml-0.1.4.tar.gz...
-> http://dqw8nmjcqpjn7.cloudfront.net/36c852831d02cf90508c29852361d01b
Installing yaml-0.1.4...
Installed yaml-0.1.4 to /Users/Dan/.rbenv/versions/1.9.3-p448

Downloading ruby-1.9.3-p448.tar.gz...
-> ftp://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.3-p448.tar.gz
Installing ruby-1.9.3-p448...
Installed ruby-1.9.3-p448 to /Users/Dan/.rbenv/versions/1.9.3-p448

然后

localhost:octopress Dan$ ruby --version
rbenv: version `1.9.3' is not installed

跑步

which ruby
/Users/Dan/.rbenv/shims/ruby

我不确定我的 PATH (echo $PATH) 是否有问题

/Users/Dan/Library/Enthought/Canopy_64bit/User/bin:/opt/local/bin:/opt/local/sbin:/Library/Frameworks/Python.framework/Versions/Current/bin:/Users/Dan/.rbenv/shims:/Users/Dan/.rbenv/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/opt/X11/bin:/usr/texbin:/Users/Dan/scripts:/usr/local/mysql/bin:/Users/Dan/.rvm/bin

任何人都知道如何让 Octopress 工作并正确连接到适当版本的 Ruby?

4

2 回答 2

3

由于某些原因

rbenv global 1.9.3-p448

无法在 octopress 文件夹中设置我的 ruby​​ 默认值,但是当我运行本地

rbenv local 1.9.3-p448

一切正常。

于 2013-08-24T05:01:34.550 回答
3

尝试运行rbenv version。它应该告诉您当前版本的设置位置,以及全局命令可能无法正常工作的原因。您始终可以在您的项目文件夹中创建一个 .ruby-version 文件,其中包含该项目所需的版本号。这有助于处理具有不同 ruby​​ 版本的多个项目。

于 2013-08-28T16:49:08.630 回答