web-dev-qa-db-fra.com

Installation de Rails Path sur Ubuntu avec RVM

Je suis un noob Linux exécutant Ubuntu 10.04 et essayant d'installer Rails. J'ai d'abord installé Ruby, puis RVM, puis téléchargé et installé Rubygems, puis Rails.

Rails ne semble réagir que si j'ai un 'Sudo' devant la commande. Si j'écris 'Rails new test' dans le terminal, je reçois ceci:

/usr/local/lib/site_Ruby/1.8/rubygems.rb:779:in `report_activate_error': Could not find RubyGem Rails (>= 0) (Gem::LoadError)
    from /usr/local/lib/site_Ruby/1.8/rubygems.rb:214:in `activate'
    from /usr/local/lib/site_Ruby/1.8/rubygems.rb:1082:in `gem'
    from /usr/bin/Rails:18

Si je vais au terminal et écris 'Rails -v' j'obtiens la même chose:

   /usr/local/lib/site_Ruby/1.8/rubygems.rb:779:in `report_activate_error': Could not find RubyGem Rails (>= 0) (Gem::LoadError)
        from /usr/local/lib/site_Ruby/1.8/rubygems.rb:214:in `activate'
        from /usr/local/lib/site_Ruby/1.8/rubygems.rb:1082:in `gem'
        from /usr/bin/Rails:18

Et si je vais au terminal et écris «Sudo Rails -v», je reçois ce qui suit: Rails 3.0.0.rc

'environnement bijou' me donne ceci:

RUBYGEMS VERSION: 1.3.7
  - Ruby VERSION: 1.9.2 (2010-07-11 patchlevel -1) [i686-linux]
  - INSTALLATION DIRECTORY: /home/josh/.rvm/gems/Ruby-1.9.2-rc2@Rails3tutorial
  - Ruby EXECUTABLE: /home/josh/.rvm/rubies/Ruby-1.9.2-rc2/bin/Ruby
  - EXECUTABLE DIRECTORY: /home/josh/.rvm/gems/Ruby-1.9.2-rc2@Rails3tutorial/bin

Je soupçonne que mon chemin n'est pas configuré correctement mais je ne sais pas comment le réparer. Suggestions?

24
user424703

J'ai également rencontré ce problème lors d'une nouvelle installation d'Ubuntu 10.10 ... même après avoir installé les prérequis de RVM et de Ruby documentés par "$ rvm notes". 

Il semble y avoir un problème avec l'installation de "rvm" gem incapable de trouver l'installation du système zlib. Le commentaire de Daniel ci-dessus est un excellent commentaire - dommage qu'il ne soit pas indiqué comme une réponse.

La solution pour moi a donc été de suivre les instructions données par Daniel à l'adresse suivante: https://rvm.beginrescueend.com/packages/zlib/ .

$ rvm pkg install zlib
$ rvm remove 1.9.2
$ rvm install 1.9.2

La première commande installe zlib localement dans votre zone rvm. La deuxième commande supprime Ruby 1.9.2 et la troisième commande réinstalle Ruby 1.9.2 avec la zlib rvm-local.

Définissez ensuite votre version de Ruby et installez des gemmes:

$ utilisation rvm 1.9.2
$ gem install "que ce soit"

45
scaganoff

À mon avis, vous avez installé vos pierres précieuses à l’aide de Sudo (par exemple, Sudo gem install Rails). Lorsque vous utilisez Sudo pour installer, RVM est ignoré et le système Ruby est utilisé.

Lorsque vous utilisez RVM, vous ne voulez vraiment pas installer avec Sudo (notez qu'il existe une commande rvmsudo pour exécuter votre configuration RVM via Sudo, mais vous l'utiliserez rarement). Comme vous pouvez le constater à partir de votre environnement, vos pierres précieuses seront stockées dans /home/josh/.rvm/gems/Ruby-1.9.2-rc2@Rails3tutorial/gems, où vous n’avez pas besoin d’autorisations root pour l’installer.

Alors essayez:

gem install Rails

comme vous-même et voyez si tout fonctionne.

17
Rob Di Marco

Si vous obtenez cet avertissement, "ERREUR: Chargement de la commande: update (LoadError) pas de fichier de ce type à charger - zlib"

En gros, si la bibliothèque zlib n’existe pas au moment de la compilation de Ruby, il vous suffit de revenir en arrière et de l’installer, puis de la recompiler.

Alors essayez ces étapes

  1. Désinstaller Ruby

    rvm supprimer Ruby-1.9.2

  2. Installer les librairies nécessaires

    Sudo apt-get install build-essential libssl-dev libreadline5 libreadline5-dev zlib1g zlib1g-dev

  3. Réinstaller Ruby

    rvm installer 1.9.2

  4. Vous voudrez probablement définir cette version de Ruby par défaut

    utilisation rvm 1.9.2 --default

  5. Juste pour votre sécurité, fermez le terminal que vous avez actuellement et ouvrez-en un nouveau. Vous devriez être bon pour partir d'ici.

7
Ryan

Comme Rob Di Marco l'a indiqué ci-dessus, vous ne pouvez pas utiliser Sudo gem install Rails avec RVM (voir le Documentation RVM ).

En fait, je viens de poser une question très similaire. J'ai initialement installé Rails avec Sudo gem et lorsque j'ai tenté d'installer une version plus ancienne de Rails à l'aide de RVM, j'ai rencontré ce problème. C'était mon code:

rvm use 1.8.7
rvm gemset create Rails3.0.1
rvm [email protected]
Sudo gem install Rails --version=3.0.1 #the *Sudo* in this line is WRONG

Un autre utilisateur (zetetic) vous a suggéré de désinstaller votre "Sudo gem Rails" avec la commande suivante:

Sudo gem uninstall Rails

Et puis installez à nouveau sans Sudo - gem install Rails

Après avoir fait tout cela, j'ai réessayé mon code original et cela a fonctionné, mais cette fois sans Sudo:

rvm use 1.8.7
rvm gemset create Rails3.0.1
rvm [email protected]
gem install Rails --version=3.0.1

Le code ci-dessus ne vous concerne que si vous essayez d'utiliser RVM, mais pour résoudre votre problème, essayez de désinstaller vos Rails Sudo et de le réinstaller sans Sudo. Travaillé pour moi Bonne chance!

2
vich

La solution est :

apt-get install build-essential libssl-dev libreadline5 libreadline5-dev zlib1g zlib1g-dev

Ensuite :

rvm install Ruby-1.9.2-p290
rvm default 1.9.2
2
Unitech

Non, toutes mes pierres précieuses sont installées sans Sudo .

Voici quelques informations de débogage qui pourraient vous aider.

$ PATH avant rvm 1.9.2 --passenger

/home/kevin/.rvm/gems/Ruby-1.9.2-p0/bin: /home/kevin/.rvm/gems/Ruby-1.9.2-p0@global/bin: /home/kevin/.rvm/rubies/Ruby-1.9.2-p0/bin:/home/kevin/.rvm/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin :/usr/bin:/sbin:/usr/games

$ PATH après rvm 1.9.2 --passenger

/home/kevin/.rvm/gems/Ruby-1.9.2-p0/bin: /bin:/home/kevin/.rvm/rubies/Ruby-1.9.2-p0/bin:/home /kevin/.rvm/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games

Ceci est mon fichier .bashrc: http://Pastebin.com/H9U3azAk

0
Kevin Sjöberg

si vous installez via source 

ext/Setup and uncomment the zlib line

$ ./configure
$ make
$ Sudo make install

$ Ruby -v
=> Ruby 1.9.2p0 (2010-08-18 revision 29036) [x86_64-linux]

$ gem -v
=> 1.3.7
0
Mayank Jain
  1. d'abord, installez les libs nécessaires

    Sudo apt-get install build-essential libssl-dev libreadline5 libreadline5-dev zlib1g zlib1g-dev

  2. puis, réinstallez Ruby 1.9.2

    rvm réinstallez 1.9.2 && rvm use 1.9.2

0
hahakubile
0
Craig Norton