2015-06-26 8 views
0

Я клонировал исходный код Google Authenticator с here. После открытия проекта iOS в Xcode я понял, что много файлов отсутствует, что приводит к сотням ошибок компиляции при попытке создания. Вот лишь некоторые из недостающих файлов являются:Google Authenticator для iOS Отсутствующие файлы

GTMNSDictionary+URLArguments.h 
GTMNSString+URLArguments.h 
GTMLocalizedString.h 
GTMRegex.h 

Кто смог построить проект IOS для Google Authenticator?

UPDATE (29 июня 2015)

Я был в состоянии найти недостающие файлы ZXing here и недостающую Google Toolbox для Mac файлов here. Затем я столкнулся с ошибкой сборки в OTPAuthURLEntryController.m на этой линии:

@property (nonatomic, retain) __attribute__((NSObject)) dispatch_queue_t queue; 

Я установил ее, изменив строку:

@property (nonatomic, retain) dispatch_queue_t queue; 

Теперь я пытаюсь исправить следующую «символ (ы) не найдено "выпуск:

Undefined symbols for architecture x86_64: 
    "_OBJC_CLASS_$_Decoder", referenced from: 
     objc-class-ref in OTPAuthURLEntryController.o 
ld: symbol(s) not found for architecture x86_64 
clang: error: linker command failed with exit code 1 (use -v to see invocation) 

Я искал все так, но все еще не понял. Любая помощь будет принята с благодарностью!

ответ

1

Мне удалось найти отсутствующие файлы ZXing here и отсутствующие файлы Google Toolbox для Mac here. Затем я добавил в проект соответствующие отсутствующие файлы. После этого, я столкнулся с ошибкой сборки в OTPAuthURLEntryController.m на этой линии:

@property (nonatomic, retain) __attribute__((NSObject)) dispatch_queue_t queue; 

Я установил ее, изменив строку:

@property (nonatomic, retain) dispatch_queue_t queue; 

После этого, я побежал в символ следующего»(ами) не найден»сообщение об ошибке:

Undefined symbols for architecture x86_64: 
    "_OBJC_CLASS_$_Decoder", referenced from: 
     objc-class-ref in OTPAuthURLEntryController.o 
ld: symbol(s) not found for architecture x86_64 
clang: error: linker command failed with exit code 1 (use -v to see invocation) 

оказывается, что основной проект (OTPAuth) связывает с библиотекой под названием libZXingWidget.a, который отсутствует (как и многие Oth вещи). Я открыл проект ZXingWidget в отсутствующих файлах ZXing и исправил ошибки сборки, удалив пользовательские флаги, которые обрабатывали предупреждения как ошибки. Затем я построил статическую библиотеку и установил цель сборки на iOS Device. Это сгенерировало файл libZXingWidget.a, в котором я нуждался. Я связал этот файл на этапах сборки основного проекта (OTPAuth), и теперь Google Authenticator работает на симуляторе iPhone 6!