ios - 单独文件中的类别给了我 "linker command failed with exit code 1 (use -v to see invocation)"

标签 ios objective-c xcode

我正在尝试为一个项目建立一个类别(我第一次)。如果我在模型 (LTUser) 中实现该类别,它工作正常,但是,如果我将其放入名为 LTUser+Additions(.h/.m) 的不同文件中,它会给出“链接器命令失败,退出代码 1(使用-v 查看调用)”错误,并显示“架构 i386 的 6 个重复符号”。我什至不确定在调用时在哪里添加 -v 。我已经包含了错误的屏幕截图。我的类别做错了什么?

LTUser+Additions.h

#import "LTUser.h"

@interface LTUser (Additions)
-(void)saySomethingMore;
+(void)tellMe;

@end

LTUser+Additions.m

#import "LTUser+Additions.h"

@implementation LTUser (Additions)
-(void)saySomethingMore{
    NSLog(@"I want to say something more to you from within category");
}

+(void)tellMe
{
    NSLog(@"I want you to tell me from the category");
}

@end

enter image description here

编辑#1 因此只需通过以下方式添加一个空类别:File -> New -> File -> 'select Objective C Category' -next-> Set name to Add and Category on LTUser

它生成 .h/.m 文件,但如果我编译它,它会给我同样的错误。这让我认为添加/删除类别文件已经搞砸了项目,但仍然不确定。

最佳答案

这看起来就像您在某处#import .m 文件而不是 .h 文件。

如果将实现放入.h文件中也会出现同样的错误 (您永远不应该这样做),并从多个位置导入 .h 文件。

关于ios - 单独文件中的类别给了我 "linker command failed with exit code 1 (use -v to see invocation)",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20225436/

相关文章:

java - 现有学校作业的替换项目

objective-c - 像 Objective C 一样隐藏的 Swift 覆盖属性集

iphone - 如何以及在何处存储应用内购买的 “Consumable” 产品?

ios - 我应该如何使用命令行参数将框架文件拖放到 xcode 项目内的框架文件夹中。(终端)

ios - Facebook App邀请不起作用

c# - 如何在Push Sharp库的APNS有效负载中添加类别以进行交互式通知iOS

ios - 如何随着字体大小的变化而平滑地动态增加和减少 UILabel 的文本 ios

iphone - 此崩溃报告 : 中没有任何信息

iphone - 在 Poptorootviewcontroller 上强制 Viewdidload

ios - info.plist中的 "Application Requires iPhone Environment"键是什么意思?