2010-02-07 3 views
2

J'ai installé fxruby à l'aidefxruby Installé sur macports, maintenant rubygems est cassé

$sudo port install rb-fxruby 

Comme suggéré dans le livre.

Il fonctionne, mon programme Bonjour tout le monde a fonctionné correctement.

Maintenant, cependant, tout autre code que je l'ai écrit est cassé, chaque fois que je tente d'utiliser un code qui repose sur une pierre précieuse, il ne fonctionne pas. Quand je fais $ruby -e "require 'rubygems'" dans mon code, il donne

"LoadError: no such file to load — rubygems" 

Quand je mets mon RUBYOPT="rubygems" dans mon .bash_profile

$ruby -e "puts 'hello world'" 
ruby: no such file to load -- ubygems (LoadError) 

(il dit 'ubygems' sans 'r' à l'avant, ne sais pas pourquoi)

http://newsgroups.derkeiler.com/Archive/Comp/comp.lang.ruby/2008-08/msg00351.html suggère que je vérifie mon emplacement gem contre mon emplacement rubis, je reçois:

$cat `which gem` | head -n 1 
#!/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby 

$ls -l `which ruby` 
-rwxr-xr-x 2 root admin 12680 Feb 7 03:40 /opt/local/bin/ruby 

Je suppose que cela signifie que les pierres précieuses sont confus, mais ne savez pas comment y remédier. Des idées? Ça craint de ne pas avoir de gemmes.

--- --- Mise à jour

oublié de lister les versions:

$which gem 
/usr/bin/gem 

$gem --version 
1.3.5 

$ruby --version 
ruby 1.8.7 (2009-04-08 patchlevel 160) [i686-darwin9] 

Répondre

2

Si vous avez installé rb-fxruby via MacPort il installera le rubis MacPort ainsi.

$ port info rb-fxruby 
... 
Library Dependencies: ruby, fox, fxscintilla 
... 

Mais comme vous pouvez le voir rb-rubygems (la version MacPort de rubygems) ne figure pas comme une dépendance, vous devrez l'installer manuellement.

$ sudo port install rb-rubygems 

devrait le faire pour vous.

1

On dirait que vous essayez d'utiliser l'Apple fourni gem qui fonctionne avec l'Apple fourni ruby. Avez-vous installé la version MacPorts?

sudo port install rb-rubygems 
/opt/local/bin/gem 
+0

Les rubygems que j'ai été installé quand je l'ai acheté l'ordinateur. Je n'ai pas de gemme de fichier sur/opt/local/bin. Devrais-je essayer d'installer des rubygems via macports? je me sens un peu comme il a changé une variable de chemin ou quelque chose, et si je pouvais comprendre que l'on/où, alors je pourrais le réparer, mais je ne sais pas où chercher. –

+0

Je ne suis pas un expert en Ruby, mais je soupçonne que, par défaut, les pierres précieuses installées sont associés à une instance ruby ​​spécifique afin lorsque vous installez les MacPorts et Ruby vous avez besoin de son paquet rubygems et vous aurez probablement à réinstaller les pierres précieuses vous avez besoin de l'utiliser. En général, les paquets MacPorts s'efforcent de tout séparer des versions fournies par Apple incluses dans OS X. –

Questions connexes