2012-01-25 12 views
10

私が作業しているプロジェクトでは、特定のファイルを解凍する必要がありました。このために、ライブラリSSZipArchiveが見つかりました。私はこれをXcode 4.2に追加しました(Classesフォルダを右クリックしてプロジェクトにファイルを追加し、ダイアログボックスの "宛先グループのフォルダにアイテムをコピー" - チェックボックスをチェックします)。私はlibzライブラリを含んでいます(私はlibzとzlib1.2.5の両方を試しました)。これはおそらく何かがXcodeでライブラリを含むと間違っていた、SSZipArchiveをIOS 5に含めるにはどうすればよいですか?

/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator5.0.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSObjCRuntime.h:311:1: error: expected identifier or '(' [1] 
@class NSString, Protocol; 
^  
/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator5.0.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSObjCRuntime.h:313:19: error: unknown type name 'NSString' [1] 
FOUNDATION_EXPORT NSString *NSStringFromSelector(SEL aSelector); 
       ^
/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator5.0.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSObjCRuntime.h:314:44: error: unknown type name 'NSString' [1] 
FOUNDATION_EXPORT SEL NSSelectorFromString(NSString *aSelectorName); 
              ^
/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator5.0.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSObjCRuntime.h:316:19: error: unknown type name 'NSString' [1] 
FOUNDATION_EXPORT NSString *NSStringFromClass(Class aClass); 
       ^
/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator5.0.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSObjCRuntime.h:317:43: error: unknown type name 'NSString' [1] 
FOUNDATION_EXPORT Class NSClassFromString(NSString *aClassName); 
             ^
/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator5.0.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSObjCRuntime.h:319:19: error: unknown type name 'NSString' [1] 
FOUNDATION_EXPORT NSString *NSStringFromProtocol(Protocol *proto) NS_AVAILABLE(10_5, 2_0); 
       ^
/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator5.0.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSObjCRuntime.h:319:50: error: unknown type name 'Protocol' [1] 
FOUNDATION_EXPORT NSString *NSStringFromProtocol(Protocol *proto) NS_AVAILABLE(10_5, 2_0); 
               ^
/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator5.0.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSObjCRuntime.h:320:19: error: unknown type name 'Protocol' [1] 
FOUNDATION_EXPORT Protocol *NSProtocolFromString(NSString *namestr) NS_AVAILABLE(10_5, 2_0); 
       ^
/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator5.0.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSObjCRuntime.h:320:50: error: unknown type name 'NSString' [1] 
FOUNDATION_EXPORT Protocol *NSProtocolFromString(NSString *namestr) NS_AVAILABLE(10_5, 2_0); 
               ^
/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator5.0.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSObjCRuntime.h:324:30: error: unknown type name 'NSString' [1] 
FOUNDATION_EXPORT void NSLog(NSString *format, ...) NS_FORMAT_FUNCTION(1,2); 
          ^
/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator5.0.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSObjCRuntime.h:324:53:{324:53-324:76}: error: format argument not an NSString [3] 
FOUNDATION_EXPORT void NSLog(NSString *format, ...) NS_FORMAT_FUNCTION(1,2); 
                ^~~~~~~~~~~~~~~~~~~~~~~ 
/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator5.0.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSObjCRuntime.h:85:49: note: instantiated from: 
     #define NS_FORMAT_FUNCTION(F,A) __attribute__((format(__NSString__, F, A))) 
                 ^
/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator5.0.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSObjCRuntime.h:325:31: error: unknown type name 'NSString' [1] 
FOUNDATION_EXPORT void NSLogv(NSString *format, va_list args) NS_FORMAT_FUNCTION(1,0); 
          ^
/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator5.0.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSObjCRuntime.h:325:63:{325:63-325:86}: error: format argument not an NSString [3] 
FOUNDATION_EXPORT void NSLogv(NSString *format, va_list args) NS_FORMAT_FUNCTION(1,0); 
                   ^~~~~~~~~~~~~~~~~~~~~~~ 
/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator5.0.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSObjCRuntime.h:85:49: note: instantiated from: 
     #define NS_FORMAT_FUNCTION(F,A) __attribute__((format(__NSString__, F, A))) 

これらは、コアライブラリ内のすべてのエラーは次のとおりです。私がコンパイルしようと突然、私は20個のエラーを持っています。私は、SSZipArchiveが使用するミニクリップに犯人を絞り込むことができました(そのライブラリを削除すると、エラーが消えてコンパイラが実行されるようになります)。しかし、なぜコンパイラが非常に多くの問題を抱えているのか、 。

答えて

35

多くの頭痛の後、私は問題が何かを考え出しました。それは_Prefix.pchであることが判明しました。私は完全にそれの上に見えたが、それは私がそこに次の行を持っていたことが判明:

#import "someclass.h" 

このクラスは、Objective-Cのヘッダが含まれ、その結果、minizipライブラリーの.C-ファイルでロードされていました.cファイルでは、これはXcodeが好きではないものでした。 #ifdefの声明の中でこれらのステートメントをラップする問題を修正:

#ifdef __OBJC__ 
    #import "someclass.h" 
#endif 
+0

Xcode 4.3.1とiOS 5.1にアップグレードした後も同じ問題(エラーメッセージ)がありました。プロジェクトは以前よりうまく動作していましたが...新しいコンパイラは今より厳しくなっていますか? – Palimondo

+1

人生保護人、ありがとうございます – charles

+1

絶対に人生節約! XCodeで表示されるエラーは、単純なBS、StackOverflowのおかげです:)です。 –

-1

は、リンクのthats以下を参照してくださいiphoneだけでなくMacアプリケーションの両方で動作します。 Archive and Unarchive from app

+0

OPは、メソッドの代替方法を求めていませんでした。 – Ash

関連する問題