我有一个使用xcodebuild
命令行工具使用archive
操作的构建脚本。
故障与其中一个吊舱中缺少的标头有关。(碰巧是HockeySDK)。
=== BUILD TARGET Pods-HockeySDK OF PROJECT Pods ===
....
CompileC ... /Library/TeamCity/../Pods/HockeySDK/Classes/BITCrashReportTextFormatter.m:34:9:
fatal error:
'CrashReporter/CrashReporter.h' file not found
这一行是:
#import <CrashReporter/CrashReporter.h>
文件中,(源头在这里)
/../MyApp/Pods/HockeySDK/Classes/BITCrashReportTextFormatter.m
实际的标题可以在这里的框架中找到:
/../MyApp/Pods/HockeySDK/Vendor/CrashReporter.framework/Versions/A/Headers/CrashReporter.h
我注意到XCode项目导航器中有两个指向该文件的链接,不确定这是否是一条线索:
所以我假设它是一个丢失的头搜索路径?但是,我已经运行了一个pod安装,并将更改推送到构建服务器。
我们使用的是HockeySKD - 3.5.4 (最新版本)。播客有一个链接到使用此语法的崩溃报告框架(不确定它是如何工作的)。
s.ios.vendored_frameworks = 'Vendor/CrashReporter.framework'
豆荚项目中的搜索路径如下所示:
发布于 2015-10-14 20:23:50
我有这个确切的问题,但我无法解决它选择我的结帐“自动代理”,因为我的回购有太多的项目。我需要这个项目中的子项目,所以我必须依赖签出“自动在服务器上”。
cocoapods的问题是,当您在teamcity上从git中查看它们时,符号链接就被破坏了。我添加了一个新的构建步骤来修复这个问题,如下所示:
rm /Git/YourCheckoutDir/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Headers
rm /Git/YourCheckoutDir/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/HockeySDK
rm /Git/YourCheckoutDir/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Resources
ln -s Versions/Current/Headers /Git/YourCheckoutDir/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Headers
ln -s Versions/Current/HockeySDK /Git/YourCheckoutDir/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/HockeySDK
ln -s Versions/A/Resources /Git/YourCheckoutDir/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Resources
rm /Git/YourCheckoutDir/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/Current
ln -s A /Git/YourCheckoutDir/Pods/HockeySDK/HockeySDK-iOS/HockeySDK.embeddedframework/HockeySDK.framework/Versions/Current
https://stackoverflow.com/questions/22832600
复制相似问题