首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在Xcode4中,CHDataStructures.framework不能为iOS编译

在Xcode4中,CHDataStructures.framework不能为iOS编译
EN

Stack Overflow用户
提问于 2011-03-24 20:07:37
回答 1查看 467关注 0票数 3

我下载了CHDataStructures源码(r709),并尝试在xCode 4下编译iOS静态库,编译时抱怨:

有没有人能告诉我怎么编译它?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-03-25 04:25:40

作为框架的作者,当Dave DeLong以我的方式通过这个链接时,我很感兴趣。

事实证明,这不是由于Xcode4,而是由于iOS 4.3SDK(顺便说一句,10.7SDK也是如此)的变化。我将OBJC_EXPORT宏与__attribute__((visibility("hidden")))一起使用(为此,我定义了一个名为HIDDEN的宏)。这不是一个问题,直到4.3/10.7在/usr/include/objc/objc-api.h中更改了OBJC_EXPORT宏的定义...

以前,它被定义为OBJC_EXTERN,但现在它被定义为OBJC_EXTERN OBJC_VISIBLE,解析为OBJC_EXTERN __attribute__((visibility("default")))。因此,我使用HIDDEN OBJC_EXPORT的声明突然开始解析为:

代码语言:javascript
运行
复制
__attribute__((visibility("hidden"))) OBJC_EXTERN __attribute__((visibility("default")))

基本上,相反的可见性属性是导致错误的原因。(准备好了,战斗吧!)

我刚刚测试并提交了一个用HIDDEN替换HIDDEN OBJC_EXPORT的修复。显然,这些符号无论如何都不需要声明为extern,因为它不需要那些宏就能工作。

因此,对您的问题的简短回答是:更新到版本710。;-)

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5418832

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档