我的 ruby1.9.2 和 rails3.2.5 都在 ubuntu11.10 上安装好后,重新终端后出现下面的错误,请问有谁知道这是为什么吗? 谢谢~~~
我的安装过程是:$ sudo apt-get install build-essential git-core curl
$ bash < <(curl -s https://rvm.beginrescueend.com/install/rvm)
$ echo '[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm"' >> ~/.bashrc
$ rvm notes
$ sudo apt-get install build-essential openssl libreadline6 libreadline6-dev zlib1g zlib1g-dev zlib libssl-dev libyaml-dev libsqlite3-0 libsqlite3-dev sqlite3 libxml2-dev libxslt-dev autoconf libc6-dev ncurses-dev automake libtool bison
$ rvm install 1.9.2
$ rvm use 1.9.2
$ rvm --default use 1.9.2
$ ruby –v
$ gem install rails
$ rails -v
到这里这些都是对的,版本号也对,这是在新建一个工程访问http://localhost:3000RuntimeUnavailable,教程上有错误提示,于是我修改Gemfile,但是打开里面是空的,发现这样我就直接关闭了终端,重新打开终端后,我习惯性的查看版本号就出现了上图所示的错误。的时候出现
可能是 shell 环境的问题,这是在 ubuntu 下的配置,可以试试。
#安装 RVM
$ sudo apt-get install curl
$ sudo apt-get install git-core
$ sudo apt-get install ruby
$ curl -L get.rvm.io | bash -s stable
$ source ~/.rvm/scripts/'rvm'
$ source ~/.bash_profile
#安装 ruby 需要的库
$ rvm requirements
$sudo apt-get install build-essential openssl libreadline6 libreadline6-dev curl git-core zlib1g zlib1g-dev libssl-dev libyaml-dev libsqlite3-dev sqlite3 libxml2-dev libxslt-dev autoconf libc6-dev ncurses-dev automake libtool bison subversion
#安装 RVM 1.9.3
$ rvm install 1.9.3 --patch railsexpress
rvm use ruby-1.9.3-p194 --default
#15 楼 @jimrokliu 卸载时出现 lorfeu@ubuntu:~$ gem uninstall rvm 程序 'gem' 已包含在下列软件包中:
后面这样做
$ rvm gemset create rails3
$ rvm gemset use rails3 --default
$ gem install rails
然后创建你的应用
$ rails new app
$ cd app
$ vi .rvmrc
需要编辑一个.rvmrc 的配置文件,可以从网上找到,以后你每次 cd 到 app 目录,都会执行.rvmrc,将你当前 shell 的环境设置成你需要 ruby 版本和 gemset 版本。
#18 楼 @jimrokliu lorfeu@ubuntu:~$ source ~/.bash_profile -bash: /home/lorfeu/.bash_profile: 没有那个文件或目录 这个错误也没有什么影响吧?
#20 楼 @jimrokliu 首先非常感谢您!我安装您的步骤安装好了,然后在网上找了说在.rvmrc 文件里加上 rvm use 1.9.3@rails325(不知道对不对)这一句,保存后运行 rails s,出现 (ExecJS::RuntimeUnavailable),我又打开 gemfile(里面居然是空的,不知道怎么回事),在里面加上 gem 'execjs' gem 'therubyracer'这两句,bundle install 之后又 rails s,还是出现同样的 (ExecJS::RuntimeUnavailable),这是怎么回事啊?我看到很多解决方法都说是加上这两句成功了
@ximeiji 关于 JS 的 Runtime 你可以考虑装个 Node.js 解决,这样就不用每次改 Gemfile
sudo apt-get install python-software-properties
sudo apt-add-repository ppa:chris-lea/node.js
sudo apt-get update
sudo apt-get install nodejs npm
#20 楼 @jimrokliu 不好意思再次打扰你,昨天我本来按照您的方法都装好了,还用了一晚上都没有出错,只是我从安装到后面的使用都同一个终端(即没有重启过终端)。。今天早上我刚打开终端,就出现昨天的那个问题,这到底是怎么回事呢?
这一般是因为路径没有在 PATH 的问题 你 sudo 安装的所以当前用户 profile 没有此 PATH, 如果 echo $PATH 没有 ruby gems 的目录, 那么按照下面的文章 http://www.troubleshooters.com/linux/prepostpath.htm 加入,重进终端就 OK 了
欢迎来到 Rails 滴世界~
#28 楼 @reyesyang lorfeu@ubuntu:~$ cat ~/.bash_login cat: /home/lorfeu/.bash_login: 没有那个文件或目录
这样吧 你直接编辑 /etc/profile 加入 PATH=$PATH:/var/lib/gems/1.8/bin <---你的 ruby gems 路径 然后 重进终端
#34 楼 @reyesyang 不好意思,我不清楚,但是我是按照这个安装的 $ sudo apt-get install curl $ sudo apt-get install git-core $ sudo apt-get install ruby $ curl -L get.rvm.io | bash -s stable $ source ~/.rvm/scripts/'rvm' $ source ~/.bash_profile
#33 楼 @huobazi 我找不到/etc/profile 的具体位置,只能用命令打开编辑。。还有这是我找到的 rubygems 路径,这么多感觉不太对 lorfeu@ubuntu:~$ find ~ -name rubygems /home/lorfeu/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/rubygems /home/lorfeu/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/site_ruby/1.9.1/rubygems /home/lorfeu/.rvm/help/rubygems /home/lorfeu/.rvm/scripts/rubygems /home/lorfeu/.rvm/src/ruby-1.9.3-p194/doc/rubygems /home/lorfeu/.rvm/src/ruby-1.9.3-p194/test/rubygems /home/lorfeu/.rvm/src/ruby-1.9.3-p194/test/rubygems/rubygems /home/lorfeu/.rvm/src/ruby-1.9.3-p194/lib/rubygems /home/lorfeu/.rvm/src/rvm/help/rubygems /home/lorfeu/.rvm/src/rvm/scripts/rubygems /home/lorfeu/.rvm/src/rubygems-1.8.24/test/rubygems /home/lorfeu/.rvm/src/rubygems-1.8.24/test/rubygems/rubygems /home/lorfeu/.rvm/src/rubygems-1.8.24/lib/rubygems
#37 楼 @reyesyang bash -v 出现: bash: -1: 无效的选项 rails -v 出现: 程序“rails”尚未安装。您可以使用以下命令安装: sudo apt-get install rails
可否把下列文件邮件 ([email protected]) 或者共享给我看看,(可能有的文件没有,只发有的即可): ~/.bashrc ~/.bash_profile ~/.bash_login ~/.profile /etc/profile /etc/bash.bashrc
#40 楼 @ximeiji 可否把下列文件邮件 ([email protected]) 或者共享给我看看,(可能有的文件没有,只发有的即可): ~/.bashrc ~/.bash_profile ~/.bash_login ~/.profile /etc/profile /etc/bash.bashrc
#25 楼 @ximeiji 这个不要紧,因为 rvm 管理了你的 ruby,所以一般要执行 rails 之前,先选择一下 ruby 和 ruby 的 gemset。
$ rvm use 1.9.3 --default
Using /home/.rvm/gems/ruby-1.9.3-p194
$ rvm gemset use rails3 --default
Using ruby-1.9.3-p194 with gemset rails3
$ rails -v
因为你用了 rvm,所以会比较干净,可以使用多个个 gemset 开发。但如果你嫌这样设置太麻烦,那你需要写一个.rvmrc 的文件,放在你工作的目录下,然后 cd 到这个目录就自动设置了。
#43 楼 @jimrokliu 现在如果一打开终端就输入$ rvm use 1.9.3 --default,直接就提示: 程序“rvm”尚未安装。您可以使用以下命令安装: sudo apt-get install ruby-rvm
#43 楼 @jimrokliu 用 bundle,不用 gemset。
#3 楼 @ximeiji 奇怪,这个安装地址应该已经失效了,新的是这个
curl -L get.rvm.io | bash -s stable
#46 楼 @jimrokliu 这样做以后就都对了,那我还想问一下,就是以后每次在终端中要使用 ror 之前,都需要这样指定 ruby 和 rails 的版本么?还有就是我在网上找了一下怎样配置.rvmrc 文件,但是感觉还是不太懂,您可以详细指点一下吗?谢谢
@jimrokliu 编辑~/.bashrc 文件,在文件的最后,加入下面一句 [[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm" 重启终端,over
http://blog.sina.com.cn/s/blog_671ada9701017k3d.html
打开【终端】 进入菜单【编辑】 选择【配置文件首选项】设置 选择【标题和命令】选项卡 勾选【命令】下【以登录 Shell 方式运行命令】