0

请原谅任何小错误,这是我的第一个问题……尽管如此,我们仍然感谢您的反馈。

我一直在尝试使用 Redpark 电缆,以便在 iPhone 和 Arduino(Mini Arduino Pro)之间进行通信。该项目未能使用我的编码构建。我已经寻找了几天的解决方案,但对其他人有效的方法对我无效。
这是我的错误:

架构 armv7 的未定义符号:
“_OBJC_CLASS_$_RscMgr”,引用自:
ViewController.o 中的 objc-class-ref
ld:未找到架构 armv7
clang 的符号:错误:链接器命令失败,退出代码为 1(使用 -v查看调用)

但是,我发现这行代码一直是问题因素。(如,如果它被删除,项目构建将成功,但不会工作。)

ViewController.m 内部 -(void)viewDidLoad

rscMgr = [[RscMgr alloc] init];

框架(“将二进制文件与库链接”):ExternalAccessory、UIKit、MediaPlayer、CoreGraphics、Foundation。

ViewController.h(删除了不必要的东西)
#import <UIKit/UIKit.h> #import "RscMgr.h"
@interface ViewController : UIViewController <RscMgrDelegate> {
RscMgr *rscMgr;
}
@property (nonatomic, retain) RscMgr *rscMgr;
@end


ViewController.m(删除了不必要的东西)
#import "ViewController.h"
#import "RscMgr.h"
@implementation ViewController
@synthesize rscMgr;
- (void)viewDidLoad
{
[super viewDidLoad];
rscMgr = [[RscMgr alloc] init];
[rscMgr setDelegate:self];
}
-(void) cableConnected:(NSString *)protocol{
[rscMgr setBaud:9600];
[rscMgr open];
}
@end


RscMgr.hredparkSerial.h的链接

redparkSerial.h 和 RscMgr.h 都没有 .m 文件

4

1 回答 1

1

这是一个链接器错误。您正确引用了库头文件,因此编译器可以将各个文件编译为目标文件,但是当链接器将它们全部连接到应用程序中时,它发现库本身不存在。您需要将库本身添加到您的项目中。标头仅描述了它的接口,它们不包括库本身。

要在最新版本的 Xcode 中执行此操作,您通常只需将静态库(以 . 结尾的文件.a)拖到您的项目中即可。但是你真的应该检查这个库的文档并遵循它推荐的安装过程。

于 2013-07-22T15:55:10.940 回答