2013-05-14 57 views
0

你好我想實現的PhoneGap貝寶插件(https://github.com/searchtool/PayPalPlugin),但不能讓它編譯 - 我收到的Xcode以下錯誤..蘋果Mach-O的連接錯誤 - PhoneGap的貝寶插件

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

嘗試通過設置其值'YES'來啓用'Build Active Architecture Only' – 2013-05-14 09:47:01

+0

Cheers Deepesh - 儘管沒有運氣.. – Dancer 2013-05-14 09:52:55

+0

您是否檢查過插件是否列在'Target - > Build Phases - > Link with binary libraries' – 2013-05-14 10:09:08

回答

0

您嘗試使用的靜態庫尚未針對armv7架構進行編譯,只有armv6和armv7。要測試這個,而不是從你的架構中啓用Build Active Architecture Only嘗試刪除 armv7s,看看是否有效。如果確實如此,那麼你可以將圖書館編譯成armv7s。

+0

乾杯lxt - 雖然它沒有工作,當我啓用'建立架構只',所以這個修復工作?另外 - 架構下沒有armv6選項 - 所以我不知道如何刪除/更改架構?對不起,我的xcode體驗相當有限! – Dancer 2013-05-14 10:39:27

+0

您應該可以添加armv7。armv6已被棄用,這就是爲什麼你看不到它。您的活動架構可能設置爲armv7s,這就是爲什麼它不起作用。 – lxt 2013-05-14 10:40:58

+0

歡呼聲 - 我編輯了「有效的體系結構」字段並刪除了armv7s - (這是否是這樣做的?) - 我仍然很遺憾地得到錯誤 – Dancer 2013-05-14 10:50:11