J'ai récemment mis à jour vers Mountain Lion et réinstallé Ruby, mais lorsque j'essaie d'exécuter un test Rails app, j'obtiens un message d'erreur qui dit que "Rails n'est pas actuellement installé" sur mon système. Je fais ce qu'il dit, tapez Sudo gem install Rails
et obtenir:
cleared faster_require caches due to new gem install...
Successfully installed Rails-3.2.7
1 gem installed
Installing ri documentation for Rails-3.2.7...
Installing RDoc documentation for Rails-3.2.7...
Mais quand je vérifie quelle version Rails est installée, voici ce que j'obtiens:
Rails is not currently installed on this system. To get the latest version, simply type:
$ Sudo gem install Rails
You can then rerun your "Rails" command.
J'ai aussi essayé gem install Rails
et obtenir:
Building native extensions. This could take a while...
ERROR: Error installing Rails:
ERROR: Failed to build gem native extension.
/Users/aileen/.rvm/rubies/Ruby-1.9.3-p194/bin/Ruby extconf.rb
creating Makefile
make
compiling generator.c
make: /usr/bin/gcc-4.2: No such file or directory
make: *** [generator.o] Error 1
Gem files will remain installed in /Users/aileen/.rvm/gems/Ruby-1.9.3-p194@Rails327/gems/json-1.7.4 for inspection.
Results logged to /Users/aileen/.rvm/gems/Ruby-1.9.3-p194@Rails327/gems/json-1.7.4/ext/json/ext/generator/gem_make.out
Je vois que vous utilisez Ruby 1.9.3 en utilisant rvm sur OS X 10.8.2 (Mountain Lion) Il est possible que certaines gemmes référencées par Rails ont besoin gcc-4.2 dans /usr/bin pour construire une estimation native.
Dans Mountain Lion, même après l'installation des outils CLI Xcode 4.5 (ouverture du menu XCode - Préférences..Téléchargement -> Outils de ligne de commande), vous obtenez /usr/bin/gcc mais pas /usr/bin/gcc-4.2 ; malheureusement le processus de construction d'une extension native repose sur /usr/bin/gcc-4.2
Cependant, je viens d'installer Rails en douceur sur un environnement tel que le vôtre. J'ai précédemment corrigé l'environnement comme indiqué dans le blog de Carina C. Zona: Correction de "make:/usr/bin/gcc-4.2: Aucun fichier ou répertoire de ce type " , c'est-à-dire:
assurez-vous d'avoir installé Homebrew
infusion - version
devrait signaler 0.9.3 ou plus
mise à jour de brassage
maintenant vous pouvez installer gcc-4.2 et créer un lien symbolink où est prévu le système de construction
brew tap homebrew/dupes
installer brew Apple-gcc42
Sudo ln -s /usr/local/bin/gcc-4.2 /usr/bin/gcc-4.2
vous êtes maintenant prêt à installer Rails avec succès
gem installer des rails
Vous devriez obtenir quelque chose comme ceci
Fetching: i18n-0.6.1.gem (100%) Fetching: activesupport-3.2.8.gem (100%) Fetching: builder-3.0.4.gem (100%) Fetching: activemodel-3.2.8.gem (100%) Fetching: rack-cache-1.2.gem (100%) Fetching: rack-test-0.6.2.gem (100%) Fetching: journey-1.0.4.gem (100%) Fetching: hike-1.2.1.gem (100%) Fetching: sprockets-2.1.3.gem (100%) Fetching: erubis-2.7.0.gem (100%) Fetching: actionpack-3.2.8.gem (100%) Fetching: arel-3.0.2.gem (100%) Fetching: tzinfo-0.3.34.gem (100%) Fetching: activerecord-3.2.8.gem (100%) Fetching: activeresource-3.2.8.gem (100%) Fetching: polyglot-0.3.3.gem (100%) Fetching: treetop-1.4.12.gem (100%) Fetching: mail-2.4.4.gem (100%) Fetching: actionmailer-3.2.8.gem (100%) Fetching: rack-ssl-1.3.2.gem (100%) Fetching: railties-3.2.8.gem (100%) Fetching: Rails-3.2.8.gem (100%) Successfully installed i18n-0.6.1 Successfully installed activesupport-3.2.8 Successfully installed builder-3.0.4 Successfully installed activemodel-3.2.8 Successfully installed rack-cache-1.2 Successfully installed rack-test-0.6.2 Successfully installed journey-1.0.4 Successfully installed hike-1.2.1 Successfully installed sprockets-2.1.3 Successfully installed erubis-2.7.0 Successfully installed actionpack-3.2.8 Successfully installed arel-3.0.2 Successfully installed tzinfo-0.3.34 Successfully installed activerecord-3.2.8 Successfully installed activeresource-3.2.8 Successfully installed polyglot-0.3.3 Successfully installed treetop-1.4.12 Successfully installed mail-2.4.4 Successfully installed actionmailer-3.2.8 Successfully installed rack-ssl-1.3.2 Successfully installed railties-3.2.8 Successfully installed Rails-3.2.8 22 gems installed Installing ri documentation for i18n-0.6.1... Building YARD (yri) index for i18n-0.6.1... Installing ri documentation for activesupport-3.2.8... Building YARD (yri) index for activesupport-3.2.8... Installing ri documentation for builder-3.0.4... Building YARD (yri) index for builder-3.0.4... Installing ri documentation for activemodel-3.2.8... Building YARD (yri) index for activemodel-3.2.8... Installing ri documentation for rack-cache-1.2... Building YARD (yri) index for rack-cache-1.2... Installing ri documentation for rack-test-0.6.2... Building YARD (yri) index for rack-test-0.6.2... Installing ri documentation for journey-1.0.4... Building YARD (yri) index for journey-1.0.4... Installing ri documentation for hike-1.2.1... Building YARD (yri) index for hike-1.2.1... Installing ri documentation for sprockets-2.1.3... Building YARD (yri) index for sprockets-2.1.3... Installing ri documentation for erubis-2.7.0... Building YARD (yri) index for erubis-2.7.0... Installing ri documentation for actionpack-3.2.8... Building YARD (yri) index for actionpack-3.2.8... Installing ri documentation for arel-3.0.2... Building YARD (yri) index for arel-3.0.2... Installing ri documentation for tzinfo-0.3.34... Building YARD (yri) index for tzinfo-0.3.34... Installing ri documentation for activerecord-3.2.8... Building YARD (yri) index for activerecord-3.2.8... Installing ri documentation for activeresource-3.2.8... Building YARD (yri) index for activeresource-3.2.8... Installing ri documentation for polyglot-0.3.3... Building YARD (yri) index for polyglot-0.3.3... Installing ri documentation for treetop-1.4.12... Building YARD (yri) index for treetop-1.4.12... Installing ri documentation for mail-2.4.4... Building YARD (yri) index for mail-2.4.4... Installing ri documentation for actionmailer-3.2.8... Building YARD (yri) index for actionmailer-3.2.8... Installing ri documentation for rack-ssl-1.3.2... Building YARD (yri) index for rack-ssl-1.3.2... Installing ri documentation for railties-3.2.8... Building YARD (yri) index for railties-3.2.8... Installing ri documentation for Rails-3.2.8... Building YARD (yri) index for Rails-3.2.8... Installing RDoc documentation for i18n-0.6.1... Installing RDoc documentation for activesupport-3.2.8... Installing RDoc documentation for builder-3.0.4... Installing RDoc documentation for activemodel-3.2.8... Installing RDoc documentation for rack-cache-1.2... Installing RDoc documentation for rack-test-0.6.2... Installing RDoc documentation for journey-1.0.4... Installing RDoc documentation for hike-1.2.1... Installing RDoc documentation for sprockets-2.1.3... Installing RDoc documentation for erubis-2.7.0... Installing RDoc documentation for actionpack-3.2.8... Installing RDoc documentation for arel-3.0.2... Installing RDoc documentation for tzinfo-0.3.34... Installing RDoc documentation for activerecord-3.2.8... Installing RDoc documentation for activeresource-3.2.8... Installing RDoc documentation for polyglot-0.3.3... Installing RDoc documentation for treetop-1.4.12... Installing RDoc documentation for mail-2.4.4... Installing RDoc documentation for actionmailer-3.2.8... Installing RDoc documentation for rack-ssl-1.3.2... Installing RDoc documentation for railties-3.2.8... Installing RDoc documentation for Rails-3.2.8...
@Franco est correct: les scripts de construction "extension native" attendent /usr/bin/gcc-4.2
, qui n'existe pas sous OS X Mountain Lion.
Sudo ln -s /usr/bin/gcc /usr/bin/gcc-4.2
Ce n'est pas spécifiquement un problème de gemme "Rails". Toute gemme qui construit des "extensions natives" échoue:
Gem :: Installer :: ExtensionBuildError: ERREUR: échec de la construction de l'extension native de gemme. [...] Vous devez d'abord installer les outils de développement.
Dans mon cas, j'essayais d'installer octopress , qui dépend de quelque chose appelé RedCloth.
J'ai également rencontré ce problème avec Mountain Lion. Le joyau qui échouait à l'installation était json
. Pour y remédier, j'ai installé les outils CLI xcode, puis j'ai simplement créé un lien symbolique entre le gcc installé (i686-Apple-darwin11-llvm-gcc-4.2) en tant que /usr/bin/gcc-4.2
. Une fois que cela a été fait, cela a simplement fonctionné.
En essayant d'installer une autre gemme, j'ai rencontré un problème similaire où l'étape de construction native se plaignait de l'absence de g ++ - 4.2. J'ai créé un lien symbolique exactement comme je l'ai fait avec gcc-4.2 ci-dessus, et cela a fonctionné.
Avec le dernier OSX 10.9 et le dernier RVM, ces problèmes semblent avoir disparu. Il est donc temps de mettre à niveau.