2015-08-13 7 views
6

您好,我有一個項目已經有人開發了。它有G +,FB整合。當我得到該項目並嘗試運行它時,它給了我這個錯誤。我如何解決這個問題?請幫幫我。

Undefined symbols for architecture x86_64: 
"_OBJC_CLASS_$_CMMotionManager", referenced from: 
    objc-class-ref in GooglePlus(GPPSpamSignal.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

請提供更多關於如何運行它,Xcode版本,目標平臺,設備或模擬器的信息? – Fantattitude

+0

Xcode是6.3,部署目標8.3,需要的設備功能 - armv 7 – user1960169

回答

16

未定義符號通常意味着你缺少的import語句。 看起來你正在使用 CMMotionManager是CoreMotion的一部分,所以你可能需要:

#import <CoreMotion/CoreMotion.h> 

,並確認您已經添加CoreMotion到項目

+2

不會。這是一個編譯錯誤。 OP需要鏈接到'CoreMotion.framework'。 – trojanfoe

+0

@trojanfoe是對的,這是解決方案 –

0

看來,您正在使用的GOOGLEPLUS SDK和SDK不支持arm64體系結構。您需要一個支持arm64架構的更新SDK。確保你有最新的副本。

1

我設法通過簡單地將.h.m文件添加到項目來調用此不聖潔的錯誤。

我通過刪除它們,然後右鍵單擊項目,單擊新建文件,然後選擇一個新的iOS Cocoa Touch類來解決此問題。

之後,我將相關代碼複製到各自的.h.m文件中。通過這種方式正確地鏈接文件

1

由於CMMotionManager是CoreMotion框架的一部分,只需在Xcode的「目標」的構建階段中包含框架:「link with」:添加「+」「CoreMotion。框架「

相關問題