2010-01-29 3 views
6

J'essaie de compiler du code C++ en tant que bibliothèque statique à utiliser sur l'iPhone. Si je compile des choses pour le simulateur (architecture i386), tout compile juste Peachy, mais quand je passe l'architecture à armer, je reçois toutes ces erreurs d'inclusion, apparemment dans les en-têtes iPhone SDK STL. Une idée de ce qui se passe?Compilation C++ pour iPhone (problème STL?)

D'abord des erreurs:

/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.0.sdk/usr/include/c++/4.2.1/string:45:0 Bits/c++config.h: No such file or directory in 
/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.0.sdk/usr/include/c++/4.2.1/string 
+0

Cette utilise la version bêta du SDK iPhone 3.2 btw. Si je choisis la cible en tant que périphérique 3.2, cela semble fonctionner, mais toutes les versions de système d'exploitation moins me donnent ces erreurs. – toastie

Répondre

10

Ajouter /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.0.sdk/usr/include/c++/4.2.1/armv6-apple-darwin9/ comme chemin d'inclusion.

En outre, s'il vous plaît déposer un bug à Apple.

+0

+1 pour le bug de fichier :) –

+0

L'ajout de ce chemin ne permet de corriger que les builds de périphériques. – zooropa

7

Pour corriger ce bug pour toutes les versions du SDK, ajoutez

$(SDKROOT)/usr/include/c++/4.2.1/armv6-apple-darwin9 

aux construire la mise en « en-tête des chemins de recherche » (l'architecture ne devrait pas d'importance, ce qui fonctionne encore pour le simulateur pour moi).

0

Il n'y a pas ARMv6-apple-darwin9 sous-répertoire