为体系结构i386定义了符号:更新Yosemit和Pod之后安装

问题描述:

我不知道我是如何得到这么多错误的。我更新了我的Mac到Yosemite,更新了我的可可做了一个pod安装。为体系结构i386定义了符号:更新Yosemit和Pod之后安装

我感觉不好因为有很多类似的问题,但我找不到任何看起来相关的东西。我试图更新可可豆荚重新安装。删除pod文件并做一个pod init,检查我的架构,它具有armvs6,armvs7标准架构。我真的很困惑。

defined symbols for architecture i386: 
    "_OBJC_CLASS_$_AFHTTPRequestOperation", referenced from: 
     objc-class-ref in LoginController.o 
    "_OBJC_CLASS_$_AFHTTPRequestOperationManager", referenced from: 
     objc-class-ref in ChatController.o 
     objc-class-ref in TutorSessionViewController.o 
     objc-class-ref in StudentSessionManager.o 
     objc-class-ref in TutorSessionManager.o 
     objc-class-ref in Device.o 
     objc-class-ref in RequestHandler.o 
     objc-class-ref in TutorMapController.o 
     ... 
    "_OBJC_CLASS_$_AFJSONRequestSerializer", referenced from: 
     objc-class-ref in ChatController.o 
     objc-class-ref in TutorSessionViewController.o 
     objc-class-ref in StudentSessionManager.o 
     objc-class-ref in TutorSessionManager.o 
     objc-class-ref in Device.o 
     objc-class-ref in RequestHandler.o 
     objc-class-ref in TutorMapController.o 
     ... 
    "_OBJC_CLASS_$_AMTagView", referenced from: 
     objc-class-ref in ProfileController.o 
    "_OBJC_CLASS_$_APNavigationController", referenced from: 
     objc-class-ref in StudentSessionManager.o 
     objc-class-ref in TutorSessionManager.o 
    "_OBJC_CLASS_$_FUIButton", referenced from: 
     _OBJC_CLASS_$_GreenButton in GreenButton.o 
     _OBJC_CLASS_$_RedButton in RedButton.o 
    "_OBJC_CLASS_$_JSBubbleImageViewFactory", referenced from: 
     objc-class-ref in ChatController.o 
    "_OBJC_CLASS_$_JSBubbleView", referenced from: 
     objc-class-ref in ChatController.o 
    "_OBJC_CLASS_$_JSMessage", referenced from: 
     _OBJC_CLASS_$_TreeMessage in Treemessage.o 
    "_OBJC_CLASS_$_JSMessagesViewController", referenced from: 
     _OBJC_CLASS_$_ChatController in ChatController.o 
    "_OBJC_CLASS_$_NZCircularImageView", referenced from: 
     objc-class-ref in ChatController.o 
    "_OBJC_CLASS_$_PKImagePickerViewController", referenced from: 
     objc-class-ref in SignUpPhotoTableViewCell.o 
    "_OBJC_CLASS_$_RATreeView", referenced from: 
     objc-class-ref in SubjectViewController.o 
    "_OBJC_CLASS_$_RNBlurModalView", referenced from: 
     objc-class-ref in TutorOptions.o 
     objc-class-ref in ChatController.o 
     objc-class-ref in CHTumblrMenuView.o 
     objc-class-ref in SubjectAddViewController.o 
    "_OBJC_CLASS_$_SDImageCache", referenced from: 
     objc-class-ref in ProfileSetting.o 
     objc-class-ref in JAAppDelegate.o 
    "_OBJC_CLASS_$_SRHubConnection", referenced from: 
     objc-class-ref in JAAppDelegate.o 
    "_OBJC_CLASS_$_SVProgressHUD", referenced from: 
     objc-class-ref in TutorOptions.o 
     objc-class-ref in ChatController.o 
     objc-class-ref in JALeftViewController.o 
     objc-class-ref in UserProfileView.o 
     objc-class-ref in RequestHandler.o 
     objc-class-ref in TimerSessionController.o 
     objc-class-ref in SplashViewController.o 
     ... 
    "_OBJC_CLASS_$_TWMessageBarManager", referenced from: 
     objc-class-ref in MessangeHandler.o 
    "_OBJC_METACLASS_$_FUIButton", referenced from: 
     _OBJC_METACLASS_$_GreenButton in GreenButton.o 
     _OBJC_METACLASS_$_RedButton in RedButton.o 
    "_OBJC_METACLASS_$_JSMessage", referenced from: 
     _OBJC_METACLASS_$_TreeMessage in Treemessage.o 
    "_OBJC_METACLASS_$_JSMessagesViewController", referenced from: 
     _OBJC_METACLASS_$_ChatController in ChatController.o 
ld: symbol(s) not found for architecture i386 
clang: error: linker command failed with exit code 1 (use -v to see invocation) 

这里是我的Podfile

source 'https://github.com/CocoaPods/Specs.git' 

target 'StudyTree' do 

pod 'JSMessagesViewController' 
pod 'XHRealTimeBlur' 
pod 'PKImagePicker', '~> 0.0.3' 
pod 'SVProgressHUD', :head 
pod 'RMStepsController', '~> 1.0.1' 
pod 'TWMessageBarManager', '~> 1.7.0' 
pod 'TTCounterLabel' 
pod 'RATreeView', '~> 0.2.2' 


pod 'AFPopupView', '~> 1.0' 
pod 'AMTagListView' 
pod 'RNBlurModalView', '~> 0.1.0' 
pod 'BPForms' 
pod 'SignalR-ObjC', :git=>'https://github.com/DyKnow/SignalR-ObjC.git', :branch => 'feature-2.0.0.beta1' 
pod 'APDropDownNavToolbar', '~> 1.1' 
pod 'FlatUIKit' 
pod 'NZCircularImageView', '~> 0.0.4' 
xcodeproj '/Users/ethankeiser/WorkSpace/test/StudyTree/StudyTree.xcodeproj' 
end 

编辑

所以我删除了所有其它链接器标记,并用$取代它(继承),我仍然得到这个。

[!] The `StudyTree [Debug]` target overrides the `OTHER_LDFLAGS` build setting defined in `Pods/Target Support Files/Pods-StudyTree/Pods-StudyTree.debug.xcconfig'. This can lead to problems with the CocoaPods installation 
    - Use the `$(inherited)` flag, or 
    - Remove the build settings from the target. 

[!] The `StudyTree [Release]` target overrides the `OTHER_LDFLAGS` build setting defined in `Pods/Target Support Files/Pods-StudyTree/Pods-StudyTree.release.xcconfig'. This can lead to problems with the CocoaPods installation 
    - Use the `$(inherited)` flag, or 
    - Remove the build settings from the target. 

在Build Settings中,找到“Other Linker Flags”。如果它是粗体,选择它并按退格键,它应该回到其正常状态。如果它不是固定的,删除所有的标志,然后删除并重新安装豆荚。

+0

谢谢!这解决了我的问题!我真的不知道为什么苹果有时候做这件事.. – fustalol 2015-01-19 10:01:44

+0

我很惊讶这个答案! – SteBra 2015-04-24 07:27:17

我有一个非常类似的一系列错误的建设我的测试中,其使用OCHamcrest和OCMock,例如:

Undefined symbols for architecture i386: 
    "_HC_assertThatLongLongWithLocation", referenced from: 
     -[WNGLoggerTests test_convertToMetricMessage_constructs_a_proper_metric] in loggerTests.o 
    "_HC_assertThatUnsignedIntegerWithLocation", referenced from: 
     -[WNGLoggerTests test_timerCount_reports_the_correct_number_of_timers_in_progress] in loggerTests.o 
    "_OBJC_CLASS_$_OCMockObject", referenced from: 
     objc-class-ref in LoggingConnectionDelegateTests.o 
     objc-class-ref in loggerTests.o 

但解决的办法是为我的方案不同。

在我的调查过程中,我验证了XCode 6.0.1命令行工具已安装,并且它看起来没有问题。

然而,我的解决办法是用(重新)安装Xcode的命令行工具:

xcode-select --install 

我发现它非常有帮助的使用完全相同的CocoaPods相同版本(0.33.1),并记我的本地环境(0.2.2)和特拉维斯(0.2)之间xctool的差异。

我相信我仍然在TravisCI上遇到https://github.com/facebook/xctool/issues/380,它仍然有https://github.com/travis-ci/travis-ci/issues/2841开放。

请注意,在从小牛升级到优胜美地之前,XCode 6中的所有内容都工作正常。