您的位置:首页 > 其它

解决Xcode5.1编译ZXing出错的问题

2014-03-19 10:01 387 查看
项目中需要用到二维码扫描功能,使用了ZXing开源库实现二维码扫描。在Xcode4.6后来升级的xcode5.0都可以编译成功。前几天OS X升级,也顺便升到了Xcode5.1。这下悲剧了。原本好好的工程编译不通过了。出现如下错误:

Unused Entity Issue: Unused Variable



Lipo Error!! can't open input file

如下图所示:





郁闷了好几天,尝试独立生成静态库再手动添加,但需要包含的头文件太多,太乱,最终没搞下去。

丢弃几天后,一天早上心血来潮,捣弄一番,居然还编译成功了。

Thank goodness!

具体解决方案如下:

第一个错误,可以通过关闭CLang的警告来解决,加入如下代码:

#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wunused-variable"

// Insert code here

#pragma clang diagnostic pop

第二个错误,将Project target-> Build setting-> Build Active Architecture only 设置为YES。如下图



还有一个要修改的是,将Build Settings的Architectures修改为arm7 armv7s.Xcode5.1默认是加上arm64的,但有些库不支持arm64,所以需要将它去掉。



Clean and Build.All is Ok.What a beautiful day!

至于为什么会在Xcode5.0以下不错误,在5.1就出错了,估计是5.1将一些编译参数的安全等级提高了,所以导致这个错误。纯粹猜测而已,暂时没空查证,希望高手指正。

================================

经网友 @ linglong117 指点(在此先谢过),可以通过添加编译参数解决该问题,解决办法如下:

1、Select ZXingWidget framework.

2、Select ZXingWidget target in ZXingWidget framework.

3、Press Build setting tab and type "other wa" in search.

4、Add -w parameter flag to Other Warning Flags.

如下图所示:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: