2009-12-22 3 views
0

Je construis une application Core Data + Core Animation très simple.Impossible de trouver NSExpression lors de la compilation pour OSX 10.6

Lors de la compilation pour Mac OS X 10.6, 64 bits, Xcode ne cesse de jeter l'erreur:

/Developer/SDKs/MacOSX10.6.sdk/System/Library/Frameworks/CoreData.framework/Headers/NSFetchRequestExpression.h:16:0 
/Developer/SDKs/MacOSX10.6.sdk/System/Library/Frameworks/CoreData.framework/Headers/NSFetchRequestExpression.h:16: 
error: cannot find interface declaration for 'NSExpression', superclass of 'NSFetchRequestExpression' 

Si je compile à 10.5 tout irait bien. Aussi, j'ai commencé un autre projet vide avec un réglage minimal. Pourtant, le problème reste. Quelqu'un a eu ce problème avant? Si vous n'êtes pas exactement sûr, toutes les suppositions seraient les bienvenues aussi.

Répondre

0

Je pense qu'il n'y a que deux possibilités: le fichier contenant la déclaration de la classe NSExpression n'a pas été importé car la directive relative est manquante, ou parce que le fichier est manquant.
Je m'attendrais à ce que vous obteniez une erreur, si une directive ferait référence à un fichier qui ne peut pas être trouvé.

2

NSExpression fait partie de Foundation; Foundation, AppKit et Core Data sont ensemble Cocoa. Ainsi, pour que le compilateur connaisse NSExpression, vous devez avoir déjà importé <Foundation/Foundation.h> ou <Cocoa/Cocoa.h>. Je suggère de le faire dans l'en-tête de votre préfixe (ce que vous devriez déjà faire, en supposant que vous n'avez pas vidé ou annulé l'en-tête de préfixe que Xcode vous donne gratuitement).

Questions connexes