Depuis la mise à niveau vers Yosemite, je reçois cette erreur en essayant de construire tout ce qui inclut Ruby.h
:
In file included from /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/include/Ruby-2.0.0/Ruby.h:33:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/include/Ruby-2.0.0/Ruby/ruby.h:24:10: fatal error: 'Ruby/config.h' file not found
#include "Ruby/config.h"
^
1 error generated.
make[1]: *** [objects/if_Ruby.o] Error 1
make[1]: *** Waiting for unfinished jobs....
make: *** [first] Error 2
Et bien sûr, /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/include/Ruby-2.0.0/Ruby/config.h
est en effet manquant.
$ ls -laF /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/include/Ruby-2.0.0/Ruby/
total 72
drwxr-xr-x 21 root wheel 714 Jul 29 21:56 ./
drwxr-xr-x 5 root wheel 170 Jul 29 21:56 ../
drwxr-xr-x 7 root wheel 238 Jul 29 21:56 backward/
-rw-r--r-- 2 root wheel 3360 Sep 21 15:25 debug.h
-rw-r--r-- 2 root wheel 5553 Sep 21 15:25 defines.h
-rw-r--r-- 2 root wheel 881 Sep 21 15:25 digest.h
-rw-r--r-- 2 root wheel 7628 Sep 21 15:25 dl.h
-rw-r--r-- 2 root wheel 14123 Sep 21 15:25 encoding.h
-rw-r--r-- 2 root wheel 32904 Sep 21 15:25 intern.h
-rw-r--r-- 2 root wheel 5869 Sep 21 15:25 io.h
-rw-r--r-- 2 root wheel 4522 Sep 21 15:25 missing.h
-rw-r--r-- 2 root wheel 37617 Sep 21 15:25 oniguruma.h
-rw-r--r-- 2 root wheel 1502 Sep 21 15:25 re.h
-rw-r--r-- 2 root wheel 890 Sep 21 15:25 regex.h
-rw-r--r-- 2 root wheel 49734 Sep 21 15:25 Ruby.h
-rw-r--r-- 2 root wheel 4651 Sep 21 15:25 st.h
-rw-r--r-- 2 root wheel 374 Sep 21 15:25 subst.h
-rw-r--r-- 2 root wheel 1102 Sep 21 15:25 thread.h
-rw-r--r-- 2 root wheel 2139 Sep 21 15:25 util.h
-rw-r--r-- 2 root wheel 1968 Sep 21 15:25 version.h
-rw-r--r-- 2 root wheel 1794 Sep 21 15:25 vm.h
L'installation est-elle accidentellement un fichier? Yosemite est-il simplement livré avec un ensemble de fichiers d’en-tête Ruby éclaté?
Quelle est la meilleure façon de résoudre ce problème? Puis-je décompresser le code source pour obtenir les bons en-têtes?
Une remarque à ce sujet: j'ai rencontré ce problème après la mise à niveau vers "OS X El Capitan". J'ai installé les outils de ligne de commande en exécutant 'xcode-select --install'. Après cela, mon environnement de génération Ruby a recommencé à fonctionner.
cd /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/include/Ruby-2.0.0/Ruby
Sudo ln -s ../universal-darwin15/Ruby/config.h ./config.h
met à jour la réponse de Nicholas Tsipanov du 2014-10-18.
Pour ceux qui ont déjà installé Xcode à partir du site de développeurs Apple , exécuter xcode-select --install
ne fonctionne pas, car il dira que Xcode est déjà installé (Xcode est déjà fourni avec la CommandLineTools
fournie).
Dans mon cas, je l'ai corrigé en téléchargeant la CommandLineTools
correspondante du même endroit, en l'exécutant, puis en allant à /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg
et en l'exécutant également.
J'ai la même erreur, mais j'ai installé " Outils de ligne de commande (OS X 10.10) pour Xcode - Xcode 6.1 " et l'installation a bien fonctionné par la suite.
Si vous utilisez Homebrew, brew install Ruby
est une solution de contournement rapide (vous obtenez une nouvelle installation Ruby distincte de celle de Xcode).
Essaye ça:
cd /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/include/Ruby-2.0.0/Ruby
Sudo ln -s ../universal-darwin13/Ruby/config.h ./config.h
Xcode s'est en quelque sorte égaré dans la mise à niveau.
J'ai ouvert Xcode (ce que je ne fais jamais autrement) et il s'est plaint de toutes sortes de composants manquants. Alors je laisse les choses aller de l'avant et se corrige, et maintenant tout va bien.
Props to CDub dans les commentaires sur OP pour indiquer que c'est une source potentielle d'étrangeté.
Correction en pointant sur le chemin correct pour les outils de développement Xcode.
Erreur avant (notez le chemin d'accès à Xcode711.app au lieu de Xcode.app)
/Applications/Xcode711.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/include/Ruby-2.0.0/Ruby/ruby.h:24:10:
A couru
Sudo xcode-select -s /Applications/Xcode.app/Contents/Developer