所以我刚刚从ubuntu交换到mac并设置env并不像承诺的那么容易.
这是我遵循的过程.
command line tools然后通过运行验证是否安装了正确的版本 gcc --version
i686-apple-darwin11-llvm-gcc-4.2 (GCC) 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2336.11.00)
Copyright (C) 2007 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Run Code Online (Sandbox Code Playgroud)$ ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go)"跑了brew doctor,这就是我得到的
Your system is ready to brew.
5.安装git brew update+brew install git
6.通过ssh将我的电脑链接到我的git帐户
7.安装Rbenv …
我怎么能完全卸载 rbenv?
我想安装rvm,我想rbenv完全摆脱,所以他们不会发生冲突.
这是我到目前为止所做的:
rm -rf ~/.rbenv
清除了添加到我~/.profile文件中的所有行
关闭并重新打开我的shell
但仍然留下一个rbenv命令行工具,所以当我运行时rbenv我获得与以前相同的输出,所有选项,减去我之前安装的所有ruby版本.
编辑:
当我跑,which rbenv我得到usr/bin/rbenv.从那里删除它是否安全?
我的Mac OS X有一个默认的ruby.
$ ruby -v
ruby 2.0.0p451 (2014-02-24 revision 45167) [universal.x86_64-darwin13]
Run Code Online (Sandbox Code Playgroud)
我安装了rbenv和ruby版本2.1.2.
$ rbenv versions
system
* 2.1.2 (set by /Users/sdw/.rbenv/version)
Run Code Online (Sandbox Code Playgroud)
我试图将全局ruby版本设置为2.1.2,但没有任何反应.
$ rbenv global 2.1.2
$ ruby -v
ruby 2.0.0p451 (2014-02-24 revision 45167) [universal.x86_64-darwin13]
Run Code Online (Sandbox Code Playgroud)
所以我试着用命令做同样的事情sudo,但结果是一样的.
$ sudo rbenv global 2.1.2
$ ruby -v
ruby 2.0.0p451 (2014-02-24 revision 45167) [universal.x86_64-darwin13]
Run Code Online (Sandbox Code Playgroud)
如何将我的全局ruby版本更改为2.1.2?我从未安装过rvm或其他ruby版本管理系统.
我有一个带有以下开发环境的rails项目:
一切正常:rbenv安装在来宾机器上,我的rails服务器在来宾机器的端口3000上启动,并转发到主机(在Vagrant文件中配置).
我想Rubymine(安装在主机上)在流浪者里面使用SDK,在Vagrant里面使用gem,在rbenv里面.
我怎样才能做到这一点 ?
要明确:
Host machine -> OSX
Guest machine -> Lucid64 in vagrant
Run Code Online (Sandbox Code Playgroud) development-environment ruby-on-rails rubymine vagrant rbenv
我试图在安装新的gem之后重新使用rbenv它在我的ubuntu服务器上给了我这些错误
rbenv: cannot rehash: /home/deployer/.rbenv/shims/.rbenv-shim exists
Run Code Online (Sandbox Code Playgroud)
但.rbenv-shims不存在
我使用普通的Vim和Lion上的红宝石支持(由gist安装).我正在使用ruby和rbenv,所以我的路径看起来像/users/me/.rbenv/shims:.....
从vim内部的路径是
:!echo $PATH
> usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/Users/fb/.rbenv/shims:....
Run Code Online (Sandbox Code Playgroud)
即使我可以创建和修改环境变量:
:let $PATH = "/bar:/foo"
:!echo $PATH
> /usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/foo:/bar
Run Code Online (Sandbox Code Playgroud)
路径仍然以/ usr/bin开头.
那么如何在〜/ .rbenv/shims中访问我的ruby 1.9.3而不是/ usr/bin中的系统ruby?
我是rbenv的新手(长时间使用RVM).今天我清理卸载我的RVM并安装rbenv.我设法安装Ruby 2.5.1没有任何问题.
但是当我bundle install今天尝试运行一个项目时,我收到以下错误:
'find_spec_for_exe': can't find gem bundler (>= 0.a) with executable bundle (Gem::GemNotFoundException)
看来我的捆绑安装已经破坏了一些东西,但我不确定是什么问题.运行gem install bundler有sudo没有解决的问题.
这是完整的痕迹:
$ echo $SHELL
/bin/zsh
$ cat ~/.gemrc
gem: --no-document
install: --no-document
update: --no-document
$ rbenv versions
system
* 2.5.1 (set by /Users/zulh/.rbenv/version)
$ ruby -v
ruby 2.5.1p57 (2018-03-29 revision 63029) [x86_64-darwin16]
$ which ruby
/Users/zulh/.rbenv/shims/ruby
$ gem env
RubyGems Environment:
- RUBYGEMS VERSION: 2.7.6
- RUBY VERSION: 2.5.1 (2018-03-29 patchlevel 57) [x86_64-darwin16]
- INSTALLATION DIRECTORY: …Run Code Online (Sandbox Code Playgroud) 在尝试使用 rbenv 安装 ruby 2.7.1 时,我注意到该版本未在我的 ubuntu 18.04 上列出
$ rbenv install -l | grep 2.7.
2.7.0-dev
2.7.0-preview1
jruby-9.2.7.0
rbx-2.71828182
Run Code Online (Sandbox Code Playgroud) 我在我的ruby应用程序环境中使用rbenv和bundler.
我的'捆绑秀':
bundle show
Gems included by the bundle:
* activemodel (3.2.13)
* activerecord (3.2.13)
* activesupport (3.2.13)
* addressable (2.3.4)
* arel (3.0.2)
* bcrypt-ruby (3.0.1)
* builder (3.0.4)
* bundler (1.16.2)
* erubis (2.7.0)
* eventmachine (1.0.3)
* faraday (0.8.7)
* haml (4.0.2)
* haml-contrib (1.0.0)
* hashie (1.2.0)
* hipchat (1.0.1)
* hiredis (0.4.5)
* httparty (0.11.0)
* i18n (0.6.1)
* json (1.7.7)
* kgio (2.8.0)
* maruku (0.6.1)
* multi_json (1.9.0)
* multi_xml (0.5.5)
* multipart-post …Run Code Online (Sandbox Code Playgroud) 从 bash 切换到 zsh 时,我查找了如何解决 zsh 未正确使用 rbenv 文件夹的问题,并发现:
$ echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.zshenv
$ echo 'eval "$(rbenv init -)"' >> ~/.zshenv
$ echo 'source $HOME/.zshenv' >> ~/.zshrc
$ exec $SHELL
Run Code Online (Sandbox Code Playgroud)
我运行了所有这些,并且现在似乎正在使用正确的 rbenv 文件夹,但每当我打开新的 iTerm 窗口时,我都会收到此错误消息:
/Users/myname/.zshenv:2: command not found: rbenv
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?任何帮助将不胜感激。