新建scheme构建报错问题处理方案

问题描述:debug的时候是没有问题的。构建测试新的schme Prerelease adhoc包的时候编译失败了。
报错:

** ARCHIVE FAILED **

The following build commands failed:
        CompileC /Users/xxxxx/Library/Developer/Xcode/DerivedData/…/xxxxxx.o
 xxxx/.../xxxxxx.m normal armv7 objective-c com.apple.compilers.llvm.clang.1_0.compiler
(1 failure)
Build step 'Execute shell' marked build as failure
Finished: FAILURE

问题定位:排除了类型的错误
网上给出的解决方案有以下几种:

1.头文件引用问题

 旧:#import "FMDB.h" 
 新:#import <FMDB/FMDB.h>
这里写代码片""表示从当前项目路径开始寻找文件,如果找不到,则到系统(项目)中配置的头文件路径去找;
<>表示直接到系统(项目)中配置的头文件路径去找。
要相应的一些pod头文件修改之后,执行生成xcarchive文件正常。

结果:经过排除发现我们工程里没有这个问题,不好使。

2.类型问题

NSString *utm = [[NSString alloc] initWithFormat:@"%ld",indexPath.row];  
改为如下:
NSString *utm = [NSString stringWithFormat:@"%@", (@(indexPath.row))]  

结果:经过排除发现我们工程里没有这个问题,不好使。

3.设置编译时候的路径,${SRCROOT} 选择递归。 完美解决问题

解决方案

原因是我使用的时候创建了一个scheme,在framework的查找路径中,没有做出设置。 设置路径${SRCROOT} 类型为递归查找就行了。

猜你喜欢

转载自blog.csdn.net/shave_kevin/article/details/79162152