Après avoir installé la démo OSX Mavericks 10.9, je l'obtiens après avoir exécuté le bundle
Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.
/Users/sandric/.rvm/rubies/Ruby-1.9.3-p194/bin/Ruby extconf.rb
extconf.rb:17: Use RbConfig instead of obsolete and deprecated Config.
checking for socket() in -lsocket... *** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of
necessary libraries and/or headers. Check the mkmf.log file for more
details. You may need configuration options.
Provided configuration options:
--with-opt-dir
--without-opt-dir
--with-opt-include
--without-opt-include=${opt-dir}/include
--with-opt-lib
--without-opt-lib=${opt-dir}/lib
--with-make-prog
--without-make-prog
--srcdir=.
--curdir
--Ruby=/Users/sandric/.rvm/rubies/Ruby-1.9.3-p194/bin/Ruby
--with-iconv-dir
--without-iconv-dir
--with-iconv-include
--without-iconv-include=${iconv-dir}/include
--with-iconv-lib
--without-iconv-lib=${iconv-dir}/lib
--with-zlib-dir
--without-zlib-dir
--with-zlib-include
--without-zlib-include=${zlib-dir}/include
--with-zlib-lib
--without-zlib-lib=${zlib-dir}/lib
--with-socketlib
--without-socketlib
/Users/sandric/.rvm/rubies/Ruby-1.9.3-p194/lib/Ruby/1.9.1/mkmf.rb:381:in `try_do': The compiler failed to generate an executable file. (RuntimeError)
You have to install development tools first.
from /Users/sandric/.rvm/rubies/Ruby-1.9.3-p194/lib/Ruby/1.9.1/mkmf.rb:461:in `try_link0'
from /Users/sandric/.rvm/rubies/Ruby-1.9.3-p194/lib/Ruby/1.9.1/mkmf.rb:476:in `try_link'
from /Users/sandric/.rvm/rubies/Ruby-1.9.3-p194/lib/Ruby/1.9.1/mkmf.rb:619:in `try_func'
from /Users/sandric/.rvm/rubies/Ruby-1.9.3-p194/lib/Ruby/1.9.1/mkmf.rb:845:in `block in have_library'
from /Users/sandric/.rvm/rubies/Ruby-1.9.3-p194/lib/Ruby/1.9.1/mkmf.rb:790:in `block in checking_for'
from /Users/sandric/.rvm/rubies/Ruby-1.9.3-p194/lib/Ruby/1.9.1/mkmf.rb:284:in `block (2 levels) in postpone'
from /Users/sandric/.rvm/rubies/Ruby-1.9.3-p194/lib/Ruby/1.9.1/mkmf.rb:254:in `open'
from /Users/sandric/.rvm/rubies/Ruby-1.9.3-p194/lib/Ruby/1.9.1/mkmf.rb:284:in `block in postpone'
from /Users/sandric/.rvm/rubies/Ruby-1.9.3-p194/lib/Ruby/1.9.1/mkmf.rb:254:in `open'
from /Users/sandric/.rvm/rubies/Ruby-1.9.3-p194/lib/Ruby/1.9.1/mkmf.rb:280:in `postpone'
from /Users/sandric/.rvm/rubies/Ruby-1.9.3-p194/lib/Ruby/1.9.1/mkmf.rb:789:in `checking_for'
from /Users/sandric/.rvm/rubies/Ruby-1.9.3-p194/lib/Ruby/1.9.1/mkmf.rb:840:in `have_library'
from extconf.rb:27:in `<main>'
Gem files will remain installed in /Users/sandric/.bundler/tmp/5282/gems/libxml-Ruby-2.6.0 for inspection.
Results logged to /Users/sandric/.bundler/tmp/5282/gems/libxml-Ruby-2.6.0/ext/libxml/gem_make.out
An error occurred while installing libxml-Ruby (2.6.0), and Bundler cannot continue.
Make sure that `gem install libxml-Ruby -v '2.6.0'` succeeds before bundling.
Je pense que je n'ai pas d'outils de ligne de commande, j'ai donc essayé d'en télécharger quelques-uns. Il a découvert qu'il n'y a pas de lien habituel pour cela dans mon XCode (c'est 4, pas 5, je ne sais pas pourquoi. S'il existe un moyen d'installer le cinquième xcode - aidez-moi s'il vous plaît). Je suis donc allé à Apple page Web des développeurs et je n'ai pas trouvé d'outils de ligne de commande pour 10.9. J'ai essayé pour 10.8 - il affiche "Try install for 10.7", après avoir essayé avec des outils pour 10.7 - it prints "try pour 10,8 ".
S'il vous plaît, aidez. Je fournirai toutes les informations pour vous aider.
TLDR:
xcode-select --install
Dans OS X 10.9, les outils de développement en ligne de commande sont désormais installés à la demande lorsqu'ils sont utilisés (c'est le popup que vous mentionnez voir dans un commentaire ultérieur).
La première fois que quelque chose essaie d'utiliser l'un des outils de ligne de commande, la fenêtre contextuelle sera présentée et la commande d'origine retournera avec un message indiquant que les outils de ligne de commande doivent être installés et avec un code d'erreur. Dans ce cas, le problème est que le processus Ruby masque le message concernant les outils de ligne de commande nécessaires).
Si vous souhaitez installer explicitement les outils de ligne de commande (au lieu d'attendre le déclenchement de la fenêtre contextuelle), vous pouvez exécuter xcode-select --install
. Le package d'outils de ligne de commande est également disponible en téléchargement indépendant depuis http://developer.Apple.com/downloads .
Notez que si Xcode est installé sur votre système, vous ne devriez plus avoir besoin du package séparé d'outils de ligne de commande, les outils dans/usr/bin utiliseront automatiquement ceux situés à l'intérieur de l'application Xcode. C'est pourquoi l'interface utilisateur de Xcode n'offre plus la possibilité d'installer les outils de ligne de commande pour vous.
Pour d'autres rencontrant ce problème, j'ai dû également installer Apple-gcc via brew pour le faire fonctionner:
brew install Apple-gcc42
J'ai eu ce même problème lors de l'installation de gemmes après la mise à niveau vers OSX Mavericks. J'ai vu cela parmi les messages d'erreur:
make: gcc-4.2: No such file or directory
Ce qui suggère qu'il a du mal à trouver gcc. Quand je tape "ls/usr/bin", je vois que j'ai "gcc" mais pas "gcc-4.2". J'ai donc mis en place un lien symbolique pour lui dire de regarder dans "gcc" au lieu de "gcc-4.2", comme ceci:
Sudo ln -s /usr/bin/gcc /usr/bin/gcc-4.2
Cela a résolu mon problème. J'espère que cela aide.
J'ai dû exécuter les deux xcode-select --install
et Sudo ln -s /usr/bin/gcc /usr/bin/gcc-4.2
pour obtenir le bundle à installer ffi
Je n'ai pas assez de réputation pour commenter, mais la solution de Vyke m'a été utile/requise. Mon chemin vers le succès après la mise à jour vers mavericks était le suivant:
... et ensuite je pourrais revenir à la mise à jour de notre site Web basé sur jekyll/octopress.
XCode 5.0.2 sur Mavericks m'a donné la même erreur. Semble qu'il n'a pas été corrigé dans 5.0.1 comme prévu.
En essayant xcode-select -- install
a fait apparaître une boîte de dialogue pour installer les outils de ligne de commande (ce que j'avais déjà fait deux fois), mais a échoué car ils "n'ont pas été trouvés sur le serveur". Peut-être que cette approche est dépassée?
la solution de biobonnie ci-dessus a fonctionné pour moi:
Sudo ln -s /usr/bin/gcc /usr/bin/gcc-4.2
Après cela, les cocoapods s'installent enfin correctement! Merci! (Voterait, mais ne peut pas encore ...)
Je viens de mettre à niveau Mountain Lion en non-conformistes et j'ai reçu le message ci-dessus.
J'ai fini par lancer XCode et il m'a demandé d'installer automatiquement les composants. Une fois cela terminé, j'ai re-empaqueté et cela a fonctionné.