2010-06-13 9 views
1

J'ai installé rvm sur un système Mac OS X 10.6 avec le système ruby ​​et 1.9.1. J'ai aussi ce script Ruby de base:Utilisation de rvm avec un script ruby ​​autonome

#!/usr/bin/ruby 

require 'curb-fu' 

J'ai besoin le script pour utiliser le rubis du système indépendamment de ce qui est RVM à l'aide à un moment donné; Je suppose que j'ai que droit, au moins.

Je suis passé au système ruby ​​(rvm use system), puis j'ai installé la gemme (gem install curb-fu). Si je cours irb et tapez require 'curb-fu', cela fonctionne. Toutefois, l'exécution de ce script avec ./myscript.rb échoue:

/Users/me/bin/podcast_notify.rb:6:in `require': no such file to load -- curb-fu (LoadError) 
from /Users/me/bin/podcast_notify.rb:6 

Qu'est-ce qui ne va pas ici? Comment installer curb-fu pour qu'il soit toujours disponible pour ce script?

Répondre

2

Essayez ceci:

#!/usr/bin/ruby -rubygems 
require 'curb-fu' 

Aussi, peut-être vous devriez utiliser sudo gem install si vous êtes de retour dans la terre rubis du système.

+0

Merci - Je ne peux pas croire que j'oublié d'exiger rubygems * nouveau * ... Même avec 'sudo gem installer ', cependant, cela ne fonctionne que lorsque le système ruby ​​a été sélectionné avec rvm: Je reçois' dyld: Symbole non trouvé: _rb_str_new_cstr' sinon ... –

+1

Si vous avez d'autres questions sur RVM, il y a des gens prêts à aider 24/7 dans le canal #rvm sur freenode: http://webchat.freenode.net/?channels=rvm. –

3

Vous devez exiger des rubygems explicitement Comme Konstantin l'a dit.

#!/usr/bin/ruby 

require "rubygems" 
require "curb-fu" 

De plus, il vaut mieux poser ces questions #rvm sur irc.freenode.net