之前期望'=',',',';','asm'或'attribute'我試圖使用在iOS中用c編寫的靜態庫項目。我將.lib文件和.h文件包含在iOS項目中。當我嘗試在我的一個Objective-C類中導入頭文件時,我的靜態庫的.h文件中出現很多Expected '=',',',';','asm' or 'attribute' before...
錯誤。在iOS項目中使用靜態.lib(c)
我正在使用xCode4 for Development,它似乎正確添加了庫。當我使用Xcode 3打開項目時,這些庫將被添加到目標組「帶庫的鏈接二進制文件」,如How to resolve linking error - static lib iPhone中所述。
我從一家實際使用這些庫的公司獲得了靜態庫,所以我猜頭文件沒有錯。我自己找不到任何錯誤。
有沒有辦法在ios項目中使用正確的頭文件的.lib文件?或者除了將lib文件添加到目標組以外,還必須執行任何操作以便在我的項目中使用它們?
此致 麥克
編輯
實際錯誤消息:
預期* *前 預期 '=', '', ';', 'ASM'或「屬性」之前_far _pascal
標題導入的實際代碼:
#import <Foundation/Foundation.h>
#import "SomethingDll.h"
@interface AccountingEntry : NSObject {
NSString *entryDescription;
NSDate *entryDate;
double entryAmount;
NSString *entryType;
}
@property (nonatomic, retain) NSString *entryDescription;
@property (nonatomic, retain) NSDate *entryDate;
@property (nonatomic) double entryAmount;
@property (nonatomic, retain) NSString *entryType;
//class methods go here
//instance methods go here
-(id)initWithDescription:(NSString *)eDesc date:(NSDate*)eDate amount:(double)eAmount type:(NSString *)eType;
@end
lib的.h文件。
#ifndef __SOMETHING_DLL
#define __SOMETHING_DLL
// constants for a function
#define FIRST_ERRTEXT 0
#define NEXT_ERRTEXT 1
/*
...
some other #define of constants
*/
// Callback-Pointer Definitionen
#define INFO_FUNC_DECL BOOL (CALLBACK *lpInfoFunc)(int)
#define FILETRANS_FUNC_DECL void (CALLBACK *lpFileTransFunc)(int,long)
// Funktionsdeklarationen
#ifdef WIN32
#define IMPORTAPI WINAPI
#else
#define IMPORTAPI _far _pascal
#endif
#ifdef __cplusplus
extern "C" {
#endif
void IMPORTAPI Something_Config( int iLogLevel, char *szLogFile,
long lTimeOut_Connect, long lTimeOut,
long lTimeout_GetFile, long lTime_Info,
int iSSLVersion, char *szSSLCipher,
char *szVerifyCertificateFile, char *szVerifyCertificatePath);
/*
...
a lot of other functions
...
*/
#ifdef __cplusplus
}
#endif
#endif // End
某些實際的錯誤消息可能會使診斷問題變得更加容易。 – 2010-11-10 10:57:08
或者其他導入頭文件的實際代碼 – Eimantas 2010-11-10 11:02:00
我添加了lib的實際代碼,錯誤消息和.h文件。謝謝。 – 2010-11-10 11:23:35