Xcode编译遇到的问题

2016-11-17  本文已影响449人  JiangSy

1、

Xcode编程中出现Illegal redeclaration of property in class extension
/**

label改个名字就好了,系统中是存在label 的可能
sizetofit 这个函数该注意使用位置,浪费了我1个小时找问题

- (void)addLable:(UIView*)curtainView{
    UILabel *label = [[UILabel alloc]init];
    _curtainLabel = label;
    label.text = @"该时间没有可回放视频哟~";
    label.font = [UIFont systemFontOfSize:12];
    [label sizeToFit];
    // center 要在sizeTofit 下面,sizeTofit要在text font下
    label.center = curtainView.center;
    label.textColor = [UIColor redColor];
    label.textAlignment = NSTextAlignmentCenter;
    [curtainView addSubview:label];

}

2、

出现连接错误可以查看.o文件导出函数 命令 nm xxxx.a

3、

出现连接错误查找方式


全屏幕16_5_19_下午2_34.png

4、多mac用同一证书进行编译,也就是单项目组合开发,出坑

问题描述:以往一出现No matching provisioning profiles found 问题就一味的重新申请证书重新配置环境,很麻烦也会造成官网证书非常多不方便管理

EncoderVideo_xcodeprojNOMatching.png iOS_Certificates_-_Apple_Developer.png

那么解决方案来了,多mac如何用同一证书进行XCode 编译
把大象放冰箱一共分几步?哈哈
1、就是将申请证书的mac机器上的加密证书导出
2、将.p12文件发各个兄弟们
3、他们可以双击运行,再从网上下载开发描述文件
有个很详细的教程看连接
http://blog.csdn.net/teng_ontheway/article/details/48683879
ps:关于帖子我想说总结的很详细,不过苹果开发者中的与“证书”对应的“描述文件”没必要再从本机导出,直接在网上下载就好

还有很重要一点需要声明:

如果有同学发现妈的我按照教程玩了一遍还不好使,那我只能救你出坑了

看图有没有遇见过证书配置什么的都对呀Code Signing Identity就是没有可选项


EncoderVideo_xcodeproj.png

那么看解决方案,上图


Accounts_和_EncoderVideo_xcodeproj.png
弄一下然后重启xcode就好用了,不过这时Xcode 可能会崩溃,别担心再启动就OK了

还有都配置成功也可能出现no identity found


11111.png

看英文描述应该是描述文件出了问题,我们删掉这里我手动删除的
xcode5 provisioning profile path: ~/Library/MobileDevice/Provisioning Profiles
然后重新下载安装,clear 下工程,或者换个模拟器编译,通过了没问题。

5、

科普iOS的指令集有以下几种:
i386 (32位) x86_64(64位)是模拟器

armv6
armv7
armv7s
arm64

6、

有时候包含VC头编译不过,可以尝试将.m变为.mm

7、

xcode 中编译.a文件有时候一直是红色的编译不过
这里会出现一个问题你先编译的模拟器会发现.a依然是红色,你需要模拟器和真机都编译后.a才会变成黑色,这应该是Xcode本身的问题
http://www.cnblogs.com/XYQ-208910/p/5157673.html

8、

xcode7编译完好xcode8报错 Undefined symbols for architecture arm64:
错误file:///Users/wujiangtao/Desktop/屏幕快照%202016-10-10%20下午2.58.54.png
在使用 HiAR 后,将 Unity 项目导出为 iOS 项目,并且合到一个原生已有的项目后,xcode7 编译正常无问题,但 xcode8 编译错误,错误如图;
尝试了各种编译设置后,在一个相关的帖子里面找到解决办法:https://forums.coronalabs.com/topic/65523-omgwhat-are-these-errors/
解决办法:
将 Settings 内的 EnableTestablibility 设置为 No 即可(xcode 7 默认关闭,xcode 8 默认开启);
这个相关选项和 hiar 内部的 arm64 架构的某些函数有关,导致了报错。只要设置为 no 就可以跳过这部分错误。
转至:http://www.cocoachina.com/bbs/read.php?tid-1704599.html

9、

2017年2月25日
当项目引入ffmpeg时出现编译UIKit/UIKit.h 和 NSObject 找不到的问题,这是交叉编译的问题,因为ffmpeg是c语言编译方式,这样编译ffmpeg的时候会在pch中走oc的头文件,我们用宏分割来解决这个问题

#ifdef __OBJC__
// 所有oc的头文件
#endif
上一篇下一篇

猜你喜欢

热点阅读