2012-04-19 142 views
7

我讀過那麼多帖子,並沒有提出解決方案都爲我工作。我希望有人對解釋錯誤有所瞭解可以提供幫助。未定義的符號:符號(S)未找到的ARMv7架構 - 該怎麼辦?

我的應用程序一直工作正常(和仍然沒有),但我使用某一類「iCarousel」,這是Cover Flow功能的實現時,有一個問題。

這裏的有趣的事情:當打開示例項目的iCarousel,它運行在我的iPhone罰款。我的應用程序(在一個單獨的項目中)也運行良好。他們都使用armv6 armv7體系結構並在iOS 5.1上運行。

我那麼該類複製到自己的項目並添加所有必要的框架。目前還沒有錯誤。但是,當我構建和運行我得到一個錯誤:

Ld /Users/Sooper/Library/Developer/Xcode/DerivedData/TestApp- 
ejfsezvwxyxhqpanwwrcmsbkslxi/Build/Intermediates/TestApp.build/Debug- 
iphoneos/TestApp.build/Objects-normal/armv7/TestApp normal armv7 

    cd "/Users/Sooper/Developer/TestApp v1.0" 
    setenv IPHONEOS_DEPLOYMENT_TARGET 5.0 
    setenv PATH "/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin: 
    /Applications/Xcode.app/Contents/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin" 

/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -arch armv7 -isysroot 

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.1.sdk 
-L/Users/Sooper/Library/Developer/Xcode/DerivedData/TestApp-ejfsezvwxyxhqpanwwrcmsbkslxi/Build/Products/ 
Debug-iphoneos -F/Users/Sooper/Library/Developer/Xcode/DerivedData/TestApp-ejfsezvwxyxhqpanwwrcmsbkslxi/Build/Products/ 
Debug-iphoneos -filelist /Users/Sooper/Library/Developer/Xcode/DerivedData/TestApp-ejfsezvwxyxhqpanwwrcmsbkslxi/Build/Intermediates/TestApp.build/ 
Debug-iphoneos/TestApp.build/Objects-normal/armv7/TestApp.LinkFileList -dead_strip -miphoneos- 
version-min=5.0 -lz -framework QuartzCore -framework CoreGraphics -framework 
SystemConfiguration -lxml2.2.7.3 -framework Security -framework CoreMedia -framework Accounts 
-framework CoreFoundation -framework AudioToolbox -framework AVFoundation -framework Twitter - 
framework MediaPlayer -framework UIKit -framework Foundation -o 
/Users/Sooper/Library/Developer/Xcode/DerivedData/TestApp- 
ejfsezvwxyxhqpanwwrcmsbkslxi/Build/Intermediates/TestApp.build/Debug- 
iphoneos/TestApp.build/Objects-normal/armv7/TestApp 

在此:

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

如果刪除了錯誤消失的類的實例和應用程序運行。我完全困惑。爲什麼它會單獨工作,但不在另一個項目中?

將不勝感激一些指導。

+0

這[答案] [1]幫我同樣的問題的目標,不妨一試! [1]:http://stackoverflow.com/a/10170293/945831 – 2012-12-12 00:56:57

回答

20

確保您添加ArtworkScrollerViewController.m到你正在構建

+0

感謝您的迴應。我將如何添加'ArtworkScrollerViewController.m'到目標?這是否會在班級的信息查看器中檢查「目標成員」?我已經做到了這一點,但仍然得到同樣的錯誤。 – sooper 2012-04-19 20:25:39

+0

乾淨後,又跑了,似乎修好了。謝謝 – sooper 2012-04-19 20:32:43

+4

@sooper要將其添加到目標,請在選擇「ArtworkScrollerViewController.m」的同時打開XCode(實用程序)中的右側菜單。 File Inspector中有一個名爲「Target Membership」的下拉菜單。如果選擇它,它會將.m添加到目標。 – RileyE 2012-11-23 21:19:30

相關問題