Probleme mit CocoaPods unter OS X 10.9 Mavericks beheben

Als Software-Entwickler ist sehr wichtig, so früh als möglich die eigene Software mit neuen Betriebssystemversionen zu testen. Also habe ich mir gestern die Beta-Version von OS X 10.9 Mavericks geladen und installiert. Dabei ist mir aufgefallen, dass CocoaPods nicht mehr funktioniert. Das ist etwas ärgerlich, da CocoaPods eine sehr gute und elegante Möglichkeit bietet, externe Frameworks und Libraries unter Berücksichtigungen von Abhängigkeiten, Versionen und Compiler-Einstellungen dem eigenen Projekt hinzuzufügen. Eine Neuinstallation von CocoaPods brach mit folgendem Fehler ab:

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

/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby extconf.rb
mkmf.rb can't find header files for ruby at /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/ruby.h

Das Problem ist, dass beginnend mit Mavericks die Header (in diesem Fall von Ruby, denn CocoaPods kommt als RubyGem) nicht mehr mit den Xcode Command Line Tools geliefert werden, sondern bereits Bestandteil des OS sind. Auf diese Änderung ist noch nicht alles eingestellt (klar, die erste öffentliche Beta-Version ist schliesslich gerade erst erschienen).

Doch es gibt eine Möglichkeit, dieses zum Glück kleine Problem einfach und schnell zu umgehen, in dem die Header aus dem neuen Verzeichnis schlicht und ergreifend dahin kopiert werden, wo sie zur Zeit noch erwartet werden. Erstelle dazu einfach ein neues Skript und füge dort folgende Befehle ein:

sys_rb_usr=/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr
sdk_rb_usr=`xcode-select -p`/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr
sudo cp -r $sdk_rb_usr/include $sys_rb_usr/include

Rufe anschliessend dieses Skript auf: sh <skriptname>
Nun kannst du wie gewohnt CocoaPods installieren und nutzen!
Vielen Dank goshakkk für diese Lösung!

  • 0.00 / 5 5
0 Stimmen, 0.00 durchschnittliche Bewertung (0% Ergebnis)

OS X Lion – Jetzt auf jedem neuen Mac

Heute Nachmittag beim Interdiscount XXL in Aarau:

20120921-164633.jpg

Handeln die nach dem Motto “Besser spät als nie”? Wo haben die die neuen Macs her, die noch mit OS X Lion ausgeliefert werden, wo doch bereits der Nachfolger Mountain Lion in dritter Inkarnation ausgeliefert wird? Amüsant…

  • 0.00 / 5 5
0 Stimmen, 0.00 durchschnittliche Bewertung (0% Ergebnis)