Accueil > Général > Ubuntu 8.04 et RubyGems

Ubuntu 8.04 et RubyGems

01/05/2008

Voici un petit soucis que beaucoup de personnes utilisant Ruby vont rencontrer avec Ubuntu 8.04 (Hardy Heron pour les intimes) : si vous utilisez une version récente de RubyGems, ce dernier va grossièrement vous répondre pour tout tentative d’utilisation :

/usr/bin/gem:23: uninitialized constant Gem::GemRunner (NameError)

Personnellement j’ai rencontré ce problème après ma mise à jour d’Ubuntu alors que j’utilisais Ruby depuis des mois. D’autres semblent l’avoir rencontré en installant RubyGems avec le gestionnaire de paquet puis en effectuant une mise à jour via gem update - - system. Dans les deux cas la solution est simple :

  1. Editer le script /usr/bin/gem , ce fichier n’est pas modifiable par tout le monde, donc : sudo vi /usr/bin/gem
  2. Chercher la ligne avec require ‘rubygems’
  3. Ajouter en dessous une nouvelle ligne avec require ‘rubygems/gem_runner’
  4. Sauver, tester le résultat et amusez-vous bien.

Je ne suis pas le premier à écrire un mot à ce sujet, mais l’important est que l’information soit disponible.

Juste après cette manipulation j’ai ouvert Netbeans 6.1 installé peu avant ma mise à jour, démarré une application en cours de développement basée sur Rails 2.0.2 utilisant énormément ajax, et testé sous Firefox 3 encore en béta à ce jour. Ca se présente très bien, aucun problème à déplorer. Idem pour Subversion, Openvpn, le plugin Web Developer…. C’est un essai rapide, mais à première vue rien n’empêche de travailler correctement. Le problème avec RubyGems doit être considéré comme anecdotique.

A noter que le plugin MySpell Français n’est pas disponible pour Firefox 3, ce qui pourrait expliquer d’éventuelles fautes dans ce post ;-)

Sam. Général

  1. 19/06/2009 à 15:17 | #1

    Petit complément… pour mettre à jour une vieille version de Rubygems (par exemple de la 1.1.1 à la 1.3.4) :

    sudo gem install rubygems-update
    sudo update_rubygems

    Il faudra aussi supprimer (ou mettre en commentaire) la ligne contenant Gem.manage_gems dans le fichier /usr/bin/gem .

Les commentaires sont fermés.