Iphone 在构建时,我不断得到一个arc错误
编辑我的问题是我没有将类链接到我的项目 我正在开发一个基本上是终端应用程序的应用程序。当我试图构建它时,我得到了一个构建错误Iphone 在构建时,我不断得到一个arc错误,iphone,ios,automatic-ref-counting,build-process,Iphone,Ios,Automatic Ref Counting,Build Process,编辑我的问题是我没有将类链接到我的项目 我正在开发一个基本上是终端应用程序的应用程序。当我试图构建它时,我得到了一个构建错误 Ld /Users/evanstoddard/Library/Developer/Xcode/DerivedData/Highjack-anstcjvykrnniwbltvijvyvexirq/Build/Products/Debug-iphonesimulator/Highjack.app/Highjack normal i386 cd /Users/e
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
//
//ViewController.m
//我的工具2
//
//埃文·斯托达德于2013年2月6日创作。
//版权所有(c)2013埃文·斯托达德。版权所有。
//
#导入“ViewController.h”
#导入“xxfdhicker.h”
@界面视图控制器()
@属性(弱、非原子)IBUITextView*loggingView;
@属性(强,非原子)XXFD劫持者*stdoutHijacker;
@属性(强,非原子)XXFD劫持者*标准劫持者;
@属性(强,非原子)NSMutableString*内容;
@结束//扩展
@实现视图控制器
-(无效)viewDidLoad
{
[超级视图下载];
//劫持标准号。
self.stdoutHijacker=[XXFdHijacker-jackerWithfd:fileno(stdout)];
setbuf(标准输出,空);
self.stdoutHijacker.delegate=self;
[self.stdoutHijacker startHijacking];
[self.stdoutHijacker start复制];
//劫持标准错误
self.stderrHijacker=[xxfd劫持者劫持者,其fd:fileno(stderr)];
setbuf(stderr,NULL);
self.stderrHijacker.delegate=self;
[self.stderrHijacker startHijacking];
[self.stderrHijacker start复制];
self.contents=[NSMutableString];
NSLog(“所有孩子都爱日志”);
}//viewDidLoad
-(无效)滚动结束{
NSRange range=NSMakeRange(self.contents.length,0);
[self.loggingView scrollRangeToVisible:范围];
}//滚动结束
-(无效)劫机者:(xxfd劫机者*)劫机者文本:(NSString*)文本{
if(hijacker==self.stdoutHijacker)[self.contents附录字符串:@“stdout:”];
if(hijacker==self.stderrHijacker)[self.contents附录字符串:@“stderr:”];
[self.contents-appendString:text];
self.loggingView.text=self.contents;
[自我滚动结束];
}//劫机者
-(无效)未收到记忆警告
{
[超级记忆警告];
//处置所有可以重新创建的资源。
}
@结束
如果您需要查看更多信息,我愿意发送我的xcode项目。检查xcode项目中的xxfdhicker.m文件,打开“实用程序”视图(xcode右侧面板),并确保选中应用程序的“目标成员资格”复选框。它可能没有被编译,因此尝试链接时缺少符号您没有链接
xxfdhicker
类。我是新添加类的,所以现在我知道了…谢谢:)我是个白痴…非常感谢。再过几分钟,我会给你答案…仍然有限制。