Tas*_*Tas 5 ios cocoapods firebase google-tag-manager xcode10.1
我已经集成Firebase和GoogleTagManager使用的CocoaPods到我的iOS应用程序的目标。当我构建目标时,Xcode 不断给我错误:
Showing Recent Messages
PhaseScriptExecution [CP]\ Embed\ Pods\ Frameworks
mkdir -p /Users/xxx.xxx/Library/Developer/Xcode/DerivedData/MyApp-enzvpdzsyhjszqbnwiclnpszlyri/Build/Products/Debug-iphonesimulator/MyApp.app/Frameworks
/Users/xxx.xxx/Projects/MyApp/Applications/MyApp/Pods/Target Support Files/Pods-MyApp/Pods-MyApp-frameworks.sh: line 43: source: unbound variable
Command /bin/sh failed with exit code 1
Run Code Online (Sandbox Code Playgroud)
我已经多次清理我的项目,删除了派生数据文件夹,但这些似乎都不起作用。
我的 Podfile 看起来像这样:
platform :ios, '11.0'
target 'MyApp' do
use_frameworks!
# Pods for MyApp
pod 'Firebase/Core', '~> 5.19'
pod 'Firebase/ABTesting'
pod 'Firebase/Performance'
pod 'Firebase/RemoteConfig'
pod 'Firebase/Analytics'
pod 'GoogleTagManager', '~> 7.1'
end
Run Code Online (Sandbox Code Playgroud)
可可豆环境
CocoaPods : 1.5.3
Ruby : ruby 2.4.0p0 (2016-12-24 revision 57164) [x86_64-darwin16]
RubyGems : 2.6.8
Host : Mac OS X 10.14 (18A391)
Xcode : 10.1 (10B61)
Git : git version 2.17.2 (Apple Git-113)
Ruby lib dir : /Users/xxx.xxx/.rbenv/versions/2.4.0/lib
Repositories : master - https://github.com/CocoaPods/Specs.git @ 7c9a708dce25221eabc35ed39
Run Code Online (Sandbox Code Playgroud)
我的项目设置中缺少什么导致此错误的原因?
我花了几天时间寻找关于 SO / Cocoapods 的解决方案,但徒劳无功。
在这方面的任何帮助将不胜感激。
谢谢
小智 0
这似乎是一些特殊的问题,可能与 bash 相关或其他问题。由于某些奇怪的原因,它不适用于 ~/Library/.../MyApp-xxxxx.../Build/Products/Release-iphoneos/ 目录(我们称之为 BUILD_DIR)
如果“source”未定义(就是这种情况),则将 ${source} 替换为 ${source:-} 没有帮助,因为它会为 source 放置一个空白,这不是您想要的。
对我来说另一个问题是 rsync 找不到上面的目录。
这是我所做的:
让项目构建并给出错误。这可确保在我的 BUILD_DIR 中创建所需的框架目录,并构建框架。
在项目根目录下创建一个目录Pods-frameworks,将BUILD_DIR中的所有框架目录复制到该目录中。
在 PodsMyApp-frameworks.sh 的最后 25 行中,在调试和发布模式下调用 install_framework 以及所有与 pod 相关的框架,将 ${BUILT_PRODUCTS_DIR} 更改为定义为这个新 Pods-frameworks 目录的新宏。
再次构建项目。
这解决了问题。如果再次安装 Pod 并且版本发生更改,则可能需要重复此过程。
| 归档时间: |
|
| 查看次数: |
4766 次 |
| 最近记录: |