重复符号(使用与项目相同的库使用库的项目)

时间:2013-07-18 09:16:58

标签: ios objective-c xcode

A是静态库。 B是使用A库的静态库。 C是同时使用AB库的应用程序。

C中重复符号的问题很明显。

避免此问题的正确(官方)解决方案是什么。我真的想在A中使用B。所有ABC都是一个Xcode工作区中的我的项目。

2 个答案:

答案 0 :(得分:0)

您的导入会出现问题,即

#import "A.h"
#import "B.h"
#import "C.h"

在彼此的接口中。避免场景的更好方法是不要在接口类中导入.h文件,而是可以轻松地执行

@class A;
@class B;
@class C;
在界面中

,并导入.h文件中的相应.m类。

所以看起来应该是这样的

A.h班级

@class B;
@class C;

@interface A : NSObject

@end

A.m班级

#import "B.h"
#import "C.h"
@implementation A

@end

答案 1 :(得分:0)

@PartiallyFinite回答了我的问题。不幸的是评论。由于他没有回复我的评论回答,我可以接受,我引用他来结束这个问题。

“静态库直接编译到可执行文件/库中,因此您无需将CA相关联。在A中使用B,然后使用您的应用中B,但不要将A直接与您的应用相关联。只需添加A标题;您无需单独链接它,因为它已包含在B“。