build筑时,我不断收到弧线错误
编辑我的问题是,我没有链接到我的项目的类。
我正在开发一个基本上是terminal应用程序的应用程序。 当我尝试构build它时,出现构build错误。
Ld /Users/evanstoddard/Library/Developer/Xcode/DerivedData/Highjack-anstcjvykrnniwbltvijvyvexirq/Build/Products/Debug-iphonesimulator/Highjack.app/Highjack normal i386 cd /Users/evanstoddard/Desktop/Highjack setenv IPHONEOS_DEPLOYMENT_TARGET 6.0 setenv PATH "/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.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 i386 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator6.0.sdk -L/Users/evanstoddard/Library/Developer/Xcode/DerivedData/Highjack-anstcjvykrnniwbltvijvyvexirq/Build/Products/Debug-iphonesimulator -F/Users/evanstoddard/Library/Developer/Xcode/DerivedData/Highjack-anstcjvykrnniwbltvijvyvexirq/Build/Products/Debug-iphonesimulator -filelist /Users/evanstoddard/Library/Developer/Xcode/DerivedData/Highjack-anstcjvykrnniwbltvijvyvexirq/Build/Intermediates/Highjack.build/Debug-iphonesimulator/Highjack.build/Objects-normal/i386/Highjack.LinkFileList -Xlinker -objc_abi_version -Xlinker 2 -fobjc-arc -fobjc-link-runtime -Xlinker -no_implicit_dylibs -mios-simulator-version-min=6.0 -framework UIKit -framework Foundation -framework CoreGraphics -o /Users/evanstoddard/Library/Developer/Xcode/DerivedData/Highjack-anstcjvykrnniwbltvijvyvexirq/Build/Products/Debug-iphonesimulator/Highjack.app/Highjack Undefined symbols for architecture i386: "_OBJC_CLASS_$_XXFdHijacker", referenced from: objc-class-ref in ViewController.o ld: symbol(s) not found for architecture i386 clang: error: linker command failed with exit code 1 (use -v to see invocation)
这是我的实现文件:
// // ViewController.m // My Utility 2 // // Created by Evan Stoddard on 2/6/13. // Copyright (c) 2013 Evan Stoddard. All rights reserved. // #import "ViewController.h" #import "XXFdHijacker.h" @interface ViewController () <XXFdHijackerDelegate> @property (weak, nonatomic) IBOutlet UITextView *loggingView; @property (strong, nonatomic) XXFdHijacker *stdoutHijacker; @property (strong, nonatomic) XXFdHijacker *stderrHijacker; @property (strong, nonatomic) NSMutableString *contents; @end // extension @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; // Hijack standard out. self.stdoutHijacker = [XXFdHijacker hijackerWithFd: fileno(stdout)]; setbuf (stdout, NULL); self.stdoutHijacker.delegate = self; [self.stdoutHijacker startHijacking]; [self.stdoutHijacker startReplicating]; // Hijack standard error self.stderrHijacker = [XXFdHijacker hijackerWithFd: fileno(stderr)]; setbuf (stderr, NULL); self.stderrHijacker.delegate = self; [self.stderrHijacker startHijacking]; [self.stderrHijacker startReplicating]; self.contents = [NSMutableString string]; NSLog (@"All Kids Love Log"); } // viewDidLoad - (void) scrollToEnd { NSRange range = NSMakeRange (self.contents.length, 0); [self.loggingView scrollRangeToVisible: range]; } // scrollToEnd - (void) hijacker: (XXFdHijacker *) hijacker gotText: (NSString *) text { if (hijacker == self.stdoutHijacker) [self.contents appendString: @"stdout: "]; if (hijacker == self.stderrHijacker) [self.contents appendString: @"stderr: "]; [self.contents appendString: text]; self.loggingView.text = self.contents; [self scrollToEnd]; } // hijacker - (void)didReceiveMemoryWarning { [super didReceiveMemoryWarning]; // Dispose of any resources that can be recreated. } @end
我愿意发送我的Xcode项目,如果你需要看到更多。
检查Xcode项目中的XXFdHijacker.m文件,打开“实用程序”视图(Xcode的右侧面板),并确保为您的应用程序选中了“目标成员”checkbox。 它可能不被编译,因此在尝试链接时缺less符号
- 在Xcode Interface Builder中 – 为什么编辑器中的选项—>排列菜单(包含发送到前面,发送到后面)常常被禁用?
- iOS – pipe理IBOutlets内存的最佳方法是什么?
- 以编程方式使用大小类
- 使用UIImageRenderingModeAlwaysTemplate从界面生成器中淡入UIButton的图像
- 重写initWithCoder时无限循环
- 在iOS编程中使用Storyboard而不是xib文件有什么好处?
- 如何使用Interface Builder设置UIScreenEdgePanGestureRecognizer?
- 为什么自定义UIButton图像不能在Interface Builder中resize?
- 与UIAppearance和UIButton子类的麻烦