2013-04-01 55 views
2

我正在嘗試構建NewsYC iOS app。我可以讓它在模擬器中工作,但是當我定位到iPhone 5時,我會遇到一個未定義的符號錯誤。我對XCode和Objective C相當陌生,所以我不確定如何解決這個問題。我已經根據其他項目對這個錯誤進行了一些解讀,並在構建階段將libHNKit鏈接起來。不知道還有什麼需要改正的。未定義符號錯誤 - NewsYC iOS App

這是錯誤:

ld: warning: ignoring file /Users/stephenwalker/Library/Developer/Xcode/DerivedData/newsyc-gidnwqwyaspbjdevgkudlemjssmd/Build/Products/Debug-iphoneos/libHNKit.a, file was built for archive which is not the architecture being linked (armv7): /Users/stephenwalker/Library/Developer/Xcode/DerivedData/newsyc-gidnwqwyaspbjdevgkudlemjssmd/Build/Products/Debug-iphoneos/libHNKit.a 
Undefined symbols for architecture armv7: 
    "_OBJC_CLASS_$_HNAnonymousSession", referenced from: 
     objc-class-ref in SessionListController.o 
    "_OBJC_CLASS_$_HNSessionAuthenticator", referenced from: 
     objc-class-ref in HackerNewsLoginController.o 
    "_OBJC_CLASS_$_HNNetworkActivityController", referenced from: 
     objc-class-ref in AppDelegate.o 
    "_OBJC_CLASS_$_HNAPISearch", referenced from: 
     objc-class-ref in SearchController.o 
    "_OBJC_CLASS_$_HNSession", referenced from: 
     objc-class-ref in HackerNewsLoginController.o 
    "_OBJC_CLASS_$_HNSessionController", referenced from: 
     objc-class-ref in MainTabBarController.o 
     objc-class-ref in SessionProfileController.o 
     objc-class-ref in AppDelegate.o 
     objc-class-ref in HackerNewsLoginController.o 
     objc-class-ref in SessionListController.o 
    "_OBJC_CLASS_$_HNObjectBodyRenderer", referenced from: 
     objc-class-ref in AppDelegate.o 
    "_OBJC_CLASS_$_HNSubmission", referenced from: 
     objc-class-ref in CommentListController.o 
     objc-class-ref in EntryReplyComposeController.o 
     objc-class-ref in SubmissionTextComposeController.o 
     objc-class-ref in SubmissionURLComposeController.o 
    "_OBJC_CLASS_$_HNEntryList", referenced from: 
     objc-class-ref in MainTabBarController.o 
     objc-class-ref in MoreController.o 
     objc-class-ref in ProfileController.o 
     objc-class-ref in SessionProfileController.o 
    "_OBJC_CLASS_$_HNEntry", referenced from: 
     objc-class-ref in CommentListController.o 
ld: symbol(s) not found for architecture armv7 
clang: error: linker command failed with exit code 1 (use -v to see invocation) 

回答

1

從終端做git submodule init; git submodule update後,在newsyc項目的文件導航器中選擇HNKit.xcocdeproj。然後點擊「Build Settings」,然後您應該看到「Build Active Architecture Only」旁邊的「多個值」。點擊它並將其設置爲「否」。

+0

就是這樣!非常感謝你。我不得不更新項目和目標。 –

+0

有更多信用的人需要向Carl投票。 –

+0

@ StephenM.WalkerII很高興聽到它的工作!順便說一句,您可以通過點擊旁邊的複選標記來標記答案是否回答了您的問題。祝你好運! –