xcode 错误集
小白整理错误慢慢积累提高,如果不对的地方请指出
1. redefinition of enumerator或者linker command failed with exit code 1 (use -v to see invocation)
包含重复的文件
编译工程出现 redefinition of classXXX的错,头文件和导入的库都正确,请从Finder里看看整个工程目录下是不是有两个同名的头文件...有的话删除一个。
2.use of undeclared identifier
头文件错误。
可能是相关的头文件忘记包含进来了。
3.ld: 'Pods/librtmp-iOS/lib/librtmp.a(rtmp.o)' does not contain bitcode. You must rebuild it with bits
在Xcode 7中,我们新建一个iOS程序时,bitcode选项默认是设置为YES的。我们可以在”Build Settings”->”Enable Bitcode”选项中看到这个设置,设置为NO。如果我们的工程需要支持bitcode,则必要要求所有引入的第三方库都支持bitcode。
4.no such file or directory
从github下载一个工程报错如下
clang: error: no such file or directory: '/Users/zhangsaibao/Downloads/YZLiveAppDemo-master/YZLiveApp/Pods/AFNetworking/UIKit+AFNetworking/AFAutoPurgingImageCache.m'
clang: error: no input files
解决方法,cd到当前工程文件下,执行pod install操作
5. None of your spec sources contain a spec satisfying the dependency: `MJExtension (~> 3.0.13)`.
执行pod install操作报错如下
[!] Unable to satisfy the following requirements:
- `MJExtension (~> 3.0.13)` required by `Podfile`
None of your spec sources contain a spec satisfying the dependency: `MJExtension (~> 3.0.13)`.
解决:如过你的CocoaPods是最新版本,可能是你的三方库版本或者名字输错了,可以试着不加版本,直接Pod MJExtension试试
6. *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSDictionaryI UTF8String]: unrecognized selector sent to instance 0x17407dac0'
解决:对类型的容错判断做得不够,传入类型错误或提前释放了,看哪句话调用了UTF8String方法排查
7. The app ID "**" cannot be registered to your development team. Change your bundle identifier to a unique string to try again
解决:修改bundle identifier
8. duplicate symbol _OBJC_CLASS_$_PayTableViewCell in:
解决:由于马虎导入了.m文件,改为.h即可
9. 一刷新tableview就报错: [UITableView _configureCellForDisplay:forIndexPath:]
原因:把return cell写到了里面
NSString * cellName = [NSString stringWithFormat:@"UITableViewCell%ld%ld",(long)indexPath.section,(long)indexPath.row];
UITableViewCell * cell = [tableView dequeueReusableCellWithIdentifier:cellName];
if (!cell) {
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:cellName];
cell.backgroundColor = [UIColor clearColor];
return cell;
}
解决:把return cell写到括号外面