web-dev-qa-db-fra.com

ERREUR: Erreur lors de l'installation des cocoapods: ERREUR: échec de la création de l'extension native de gemme

J'essaie d'installer des cocoapods sur mon MacBook Pro fonctionnant avec OSX 10.9.1 (nouveaux Mavericks) et après avoir tapé gem install cocoapods J'obtiens l'erreur suivante:

    Building native extensions.  This could take a while...
ERROR:  Error installing cocoapods:
    ERROR: Failed to build gem native extension.

        "/usr/local/rvm/rubies/Ruby-1.9.3-p194/bin/Ruby" -rubygems /usr/local/rvm/gems/Ruby-1.9.3-p194/gems/rake-10.1.1/bin/rake RUBYARCHDIR=/Users/rangreenberg/gems/gems/xcodeproj-0.14.1/ext RUBYLIBDIR=/Users/rangreenberg/gems/gems/xcodeproj-0.14.1/ext
/usr/local/rvm/rubies/Ruby-1.9.3-p194/bin/Ruby extconf.rb
checking for -std=c99 option to compiler... *** 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
    --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=/usr/local/rvm/rubies/Ruby-1.9.3-p194/bin/Ruby
/usr/local/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 /usr/local/rvm/rubies/Ruby-1.9.3-p194/lib/Ruby/1.9.1/mkmf.rb:491:in `block in try_compile'
    from /usr/local/rvm/rubies/Ruby-1.9.3-p194/lib/Ruby/1.9.1/mkmf.rb:443:in `with_werror'
    from /usr/local/rvm/rubies/Ruby-1.9.3-p194/lib/Ruby/1.9.1/mkmf.rb:491:in `try_compile'
    from extconf.rb:24:in `block in <main>'
    from /usr/local/rvm/rubies/Ruby-1.9.3-p194/lib/Ruby/1.9.1/mkmf.rb:790:in `block in checking_for'
    from /usr/local/rvm/rubies/Ruby-1.9.3-p194/lib/Ruby/1.9.1/mkmf.rb:284:in `block (2 levels) in postpone'
    from /usr/local/rvm/rubies/Ruby-1.9.3-p194/lib/Ruby/1.9.1/mkmf.rb:254:in `open'
    from /usr/local/rvm/rubies/Ruby-1.9.3-p194/lib/Ruby/1.9.1/mkmf.rb:284:in `block in postpone'
    from /usr/local/rvm/rubies/Ruby-1.9.3-p194/lib/Ruby/1.9.1/mkmf.rb:254:in `open'
    from /usr/local/rvm/rubies/Ruby-1.9.3-p194/lib/Ruby/1.9.1/mkmf.rb:280:in `postpone'
    from /usr/local/rvm/rubies/Ruby-1.9.3-p194/lib/Ruby/1.9.1/mkmf.rb:789:in `checking_for'
    from extconf.rb:23:in `<main>'
rake aborted!
Command failed with status (1): [/usr/local/rvm/rubies/Ruby-1.9.3-p194/bin/...]

Tasks: TOP => default => ext
(See full trace by running task with --trace)


Gem files will remain installed in /Users/rangreenberg/gems/gems/xcodeproj-0.14.1 for inspection.
Results logged to /Users/rangreenberg/gems/gems/xcodeproj-0.14.1/ext/xcodeproj/gem_make.out
24
gran33

Vous devez installer les outils de développement de Xcode. La façon la plus simple de le faire est via le terminal ( cette question )

xcode-select --install
37
Kevin

J'ai résolu le problème en utilisant Ruby 2.0 (qui est la méthode préférée sur les non-conformistes) ou plus. Dans le cas où vous utilisez rvm, changez simplement le bon Ruby avec:

rvm use Ruby-2.0

Après ça gem install cocoapods a fonctionné correctement. Pour être plus précis, j'utilisais:

OSX 10.9.2
Ruby-2.0.0-p353
cocoapods-0.32.1
8
anka

D'abord comme écrit "Kevin", essayez de lancer le terminal:

xcode-select --install

Si cela ne vous aide pas à télécharger les outils manuellement depuis Apple site :

Ça m'a aidé.

5
averem

si vous voyez également error: active developer path .. does not exist vous devrez peut-être aussi le faire

$ Sudo xcode-select --reset
4
Mr Heelis

Bien,

J'ai eu le même problème. J'ai essayé d'installer des pods sur mon projet mais ça n'a jamais fonctionné. J'ai mis à jour Xcode, mis à jour les outils de ligne de commande, réinstallé les cocoapods ... presque tout.

Assis sur mon cul, l'écriture du pod dans le terminal a montré un écran répertoriant les commandes disponibles.

Je les ai tous lus et j'ai remarqué la commande

pod setup

qui fait

+ setup               Setup the CocoaPods environment

Après cette ligne de code, mon problème a été résolu.

J'espère que ma solution aidera d'autres personnes en difficulté comme moi.

2
xdevx

Je résous le problème en suivant l'étape:

1: rvm install 2.0.0

2: liste rvm * Ruby-1.9.3-p545 [x86_64] => Ruby-2.0.0-p451 [x86_64]

3: rvm 2.0.0 - par défaut

4: mise à jour du pod

2
showtimefan

J'avais le même problème exact, même si j'avais la dernière version des outils de ligne de commande xcode.

Si vous avez installé homebrew, faites brew install Apple-gcc42. Cela m'a immédiatement résolu.

1
ayberkt

J'obtenais cette erreur et j'ai dû réinstaller complètement les cocoapods pour le corriger. Enfin travaillé. Peut-être que cette solution convient à n'importe qui d'autre.

Sudo rm -rf home_folder/.cocoapods/

Après cela, a encore fait

pod setup

et installé mes bibliothèques à partir de zéro, et tout a fonctionné.

J'espère que ça aide!

1
voghDev

Le même problème initial s'est produit lors de la tentative de configuration de GoogleMaps dans une application Flutter après avoir exécuté pod install sur le répertoire iOS.

Fonctionnement pod install l'erreur suivante est apparue:

zsh: /usr/local/bin/pod: bad interpreter: /System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/bin/Ruby: no such file or directory

Ensuite, après avoir exécuté Sudo gem install cocoapods qui a entraîné une autre erreur similaire à celle indiquée à ERREUR: erreur lors de l'installation des cocoapods: ERREUR: échec de la création de l'extension native de gemme .

ERROR:  Error installing cocoapods:
    ERROR: Failed to build gem native extension.

kevin recommande d'installer Xcode Developer Tools en cours d'exécution:

xcode-select --install

et tout en soulignant la nécessité d'installer les outils, le système a de nouveau produit la même erreur qu'auparavant lors de l'exécution de pod install commande.

Actualiser les outils en les supprimant et en les réinstallant est devenu la prochaine cible. Les outils sont supprimés avec la commande suivante:

rm -rf /Library/Developer/CommandLineTools

Et encore une fois l'installation des outils de développement xcode en utilisant:

xcode-select --install

Ensuite, Sudo gem install cocoapods et pod install s'est exécuté avec succès.

0
IceMan

J'avais plusieurs environnements dans ma configuration, ce qui causait des problèmes car rvm interférait avec l'installation. Une fois que Ruby 2.x a été détecté, l'installation s'est bien passée.

Pour mon environnement, j'ai fait ce qui suit: 1. xcode-select --install 2. rvm implode (Remarque - trop drastique - vous n'aurez peut-être pas besoin de le faire, je n'ai pas eu d'utilisation pour l'ancien Ruby installations, je les ai supprimées via la désinstallation rvm un par un, puis j'ai utilisé l'implode rvm 3. gem install cocoapods

Cette fois, la dernière commande a fonctionné sans aucun problème.

0
LNI

J'ai le même problème et je viens de corriger avec changer mon /usr/local/include dossier vers /usr/local/include_old

0
Kun Xi

Vous devez utiliser la commande dans Terminal pour installer les outils de ligne de commande:

xcode-select --install

Si vous recevez le message suite à "Impossible d'installer le logiciel car il n'est pas actuellement disponible sur le serveur de mise à jour logicielle", vous devez télécharger manuellement les outils de ligne de commande à partir du site Apple .

0
pchelnikov