2010-03-02 50 views
7

Tôi đang cố gắng cài đặt Ruby on Rails trên bản cài đặt eeeubuntu mới của mình và tôi nghĩ rằng tôi đang gặp một số sự cố khi cài đặt RVM đúng cách.Sự cố khi cài đặt RVM cho RoR trong Ubuntu

Tôi đã cài đặt GIT và hoạt động tốt. Tôi đã cài đặt RVM và trong quá trình cài đặt, nó đã yêu cầu tôi thêm

if [[ -s /home/derek/.rvm/scripts/rvm ]] ; then source /home/derek/.rvm/scripts/rvm ; fi 

Đến cuối .bashrc Tôi đã làm.

Sau đó, nếu tôi có trả lại bằng. Bashrc, nó sẽ gây ra lỗi. Vì vậy, nó cho biết di chuyển mọi thứ bên dưới

# If not running interactively, don't do anything 
[ -z "$PS1" ] && return 

To .bash_profile Tôi đã làm. Khi tôi thử và chạy "rvm install 1.9.1" Tôi nhận được điều này

No command 'rvm' found, but there are 20 similar ones 
rvm: command not found 

Vì vậy, tôi đã làm gì sai?

Dưới đây là nội dung của .bashrc của tôi và .bash_profile

.bashrc

# ~/.bashrc: executed by bash(1) for non-login shells. 
# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc) 
# for examples 

# If not running interactively, don't do anything 
[ -z "$PS1" ] && return 

.bash_profile

# don't put duplicate lines in the history. See bash(1) for more options 
# don't overwrite GNU Midnight Commander's setting of `ignorespace'. 
HISTCONTROL=$HISTCONTROL${HISTCONTROL+,}ignoredups 
# ... or force ignoredups and ignorespace 
HISTCONTROL=ignoreboth 

# append to the history file, don't overwrite it 
shopt -s histappend 

# for setting history length see HISTSIZE and HISTFILESIZE in bash(1) 

# check the window size after each command and, if necessary, 
# update the values of LINES and COLUMNS. 
shopt -s checkwinsize 

# make less more friendly for non-text input files, see lesspipe(1) 
[ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh lesspipe)" 

# set variable identifying the chroot you work in (used in the prompt below) 
if [ -z "$debian_chroot" ] && [ -r /etc/debian_chroot ]; then 
    debian_chroot=$(cat /etc/debian_chroot) 
fi 

# set a fancy prompt (non-color, unless we know we "want" color) 
case "$TERM" in 
    xterm-color) color_prompt=yes;; 
esac 

# uncomment for a colored prompt, if the terminal has the capability; turned 
# off by default to not distract the user: the focus in a terminal window 
# should be on the output of commands, not on the prompt 
#force_color_prompt=yes 

if [ -n "$force_color_prompt" ]; then 
    if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then 
# We have color support; assume it's compliant with Ecma-48 
# (ISO/IEC-6429). (Lack of such support is extremely rare, and such 
# a case would tend to support setf rather than setaf.) 
color_prompt=yes 
    else 
color_prompt= 
    fi 
fi 

if [ "$color_prompt" = yes ]; then 
    PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\[email protected]\h\[\033[00m\]:\[\033[01; 34m\]\w\[\033[00m\]\$ ' 
else 
    PS1='${debian_chroot:+($debian_chroot)}\[email protected]\h:\w\$ ' 
fi 
unset color_prompt force_color_prompt 

# If this is an xterm set the title to [email protected]:dir 
case "$TERM" in 
xterm*|rxvt*) 
    PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\[email protected]\h: \w\a\]$PS1" 
    ;; 
*) 
    ;; 
esac 

# enable color support of ls and also add handy aliases 
if [ -x /usr/bin/dircolors ]; then 
    test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)" 
    alias ls='ls --color=auto' 
    #alias dir='dir --color=auto' 
    #alias vdir='vdir --color=auto' 

    alias grep='grep --color=auto' 
    alias fgrep='fgrep --color=auto' 
    alias egrep='egrep --color=auto' 
fi 

# some more ls aliases 
#alias ll='ls -l' 
#alias la='ls -A' 
#alias l='ls -CF' 

# Alias definitions. 
# You may want to put all your additions into a separate file like 
# ~/.bash_aliases, instead of adding them here directly. 
# See /usr/share/doc/bash-doc/examples in the bash-doc package. 

if [ -f ~/.bash_aliases ]; then 
    . ~/.bash_aliases 
fi 

# enable programmable completion features (you don't need to enable 
# this, if it's already enabled in /etc/bash.bashrc and /etc/profile 
# sources /etc/bash.bashrc). 
if [ -f /etc/bash_completion ] && ! shopt -oq posix; then 
    . /etc/bash_completion 
fi 

if [[ -s /home/derek/.rvm/scripts/rvm ]] ; then source /home/derek/.rvm/scripts/rvm ; fi 

Trả lời

11

Bạn không cần phải di chuyển nhưng để loại bỏ các return.

Bạn cũng cần thêm một số mã vào .bashrc. Bạn đã thêm nó vào .bash_profile nhưng không được thêm vào số .bashrc. Dòng bạn cần nối thêm là

if [[ -s /home/derek/.rvm/scripts/rvm ]] ; then source /home/derek/.rvm/scripts/rvm ; fi 

Vui lòng đọc kỹ hướng dẫn của trình cài đặt! Tôi không chắc chắn nếu có những thứ khác bạn cần phải thêm vào.

+0

Nhờ đó đã làm nó. Tôi không cần phải thêm bất cứ điều gì khác, nó chỉ là loại bỏ sự trở lại mà làm cho nó hoạt động. –

5

tôi thêm vào .bashrc export PATH=~/.rvm/bin:$PATH và nó làm việc cho tôi

+0

cảm ơn tôi đã có cùng một vấn đề và nó đã làm việc cho tôi – sameera207

0

On ubuntu của tôi, tôi đã làm

echo 'source "$HOME/.rvm/scripts/rvm"' >> $HOME/.bashrc 

Vì vậy .bashrc của tôi trông như thế này

tail -n 5 $HOME/.bashrc 


PATH=$PATH:$HOME/.rvm/bin # Add RVM to PATH for scripting 
source "$HOME/.rvm/scripts/rvm" 
Các vấn đề liên quan