2013-05-14 3 views
0

Привет Я пытаюсь реализовать PhoneGap Paypal плагин (https://github.com/searchtool/PayPalPlugin), но не может получить его для компиляции - я получаю следующие ошибки в Xcode ..Apple, Mach-O Linker Error - PhoneGap Paypal плагин

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

Я следил за рекомендациями в похожих SO-сообщениях - все файлы добавляются щелчком правой кнопкой мыши по проекту и использованием метода «Добавить файлы в». Но всегда получайте ошибки компоновщика! Не знаю, с чего начать - какие-нибудь советы?

+0

Попробуйте включить 'Build Active Architecture Only', установив его значение' YES' –

+0

Cheers Deepesh - не повезло, хотя .. – Dancer

+0

Вы проверили, включен ли плагин в «Target -> Build Phases -> Link with binary libraries' –

ответ

0

Статическая библиотека, которую вы пытаетесь использовать, не была скомпилирована для архитектуры armv7s, только armv6 и armv7. Чтобы проверить это, вместо включения Build Active Architecture Only попробуйте удалять armv7s из ваших архитектур и посмотреть, работает ли это. Если это так, вы можете работать над получением библиотеки, собранной до armv7s.

+0

Приветствия lxt - хотя это не сработало, когда я включил «строить архитектуру только», так будет ли это исправление работать? Кроме того, нет никакой возможности для раскрытия структуры armv6 в архитектуре - поэтому я не знаю, как удалить/изменить архитектуру? Извините, мой xcode опыт довольно ограничен! – Dancer

+0

Вы должны иметь возможность добавить armv7 в. Armv6 устарел, поэтому вы его не видите. Ваша активная архитектура, вероятно, установлена ​​в armv7s, поэтому она не работает. – lxt

+0

cheers - я редактировал поле «допустимые архитектуры» и удалял armv7s - (это способ сделать это?) - я все равно получаю ошибки, но, к сожалению, – Dancer

0

Этот плагин был переписан и больше не должен содержать эти ошибки. Он может быть найден в https://github.com/SnareChops/PayPalPlugin и был успешно протестирован в среде песочницы PayPal.

Смежные вопросы