-ObjC链接器标志是什么作用?

145
我有一个应用程序,无论是否使用链接标志都可以运行。但是,如果没有链接标志,当向视图添加数据时,会出现非常不同的行为。

1
bensarz,如果没有链接器标志,你会得到一个_不同的_行为……这是什么意思?不同的方式是怎样的? - Adil Hussain
1个回答

164
这个标志会导致链接器加载库中定义Objective-C类或分类的每个目标文件。虽然这个选项通常会导致更大的可执行文件(因为额外的目标代码被加载到应用程序中),但它将允许成功创建包含现有类别的Objective-C静态库。从此技术问答了解更多。

2
太好了!谢谢。这是因为我们使用的编译器是GCC 4.2引起的吗?使用LLVM GCC 4.2或LLVM Compiler 2.0会解决这个问题吗?还是我把不应该混在一起的东西混淆了? - bsarrazin
我认为这个行为在两个编译器中是相同的(此外,我不知道是否有两个不同的链接器)... - sergio
4
这是否意味着除了库/SDK之外,您永远不需要在其他任何地方使用-ObjC?也就是说,在实际的应用程序目标中永远不需要使用它? - Robert
4
不,这意味着在实现任何包含类别或嵌入式框架的库的项目中,都需要使用-ObjC。 - arc4randall
1
刚刚通过艰难的方式发现了这个! - Alexandre G

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接