我遇到了一个似乎是 Xcode 14.3 引入的错误,尽管它可能是由其他原因引起的。
在我的构建阶段中,我有一个名为“[CP] 嵌入 Pods 框架”的阶段。这会调用一个名为 Pods-myapp-frameworks.sh 的脚本,当其中一个框架位于符号链接(symbolic link)的文件夹中时,该脚本会失败。
构建日志中突出显示的文本显示了问题。它用相对于符号链接(symbolic link)的路径解析了符号链接(symbolic link),需要绝对路径。
该路径在脚本中的以下代码中解析(我的脚本副本中的第 42 - 45 行):
if [ -L "${source}" ]; then
echo "Symlinked..."
source="$(readlink "${source}")"
fi
读取链接默认为相对路径。添加 -f 使其输出成为绝对路径,一切都很好:
if [ -L "${source}" ]; then
echo "Symlinked..."
source="$(readlink -f "${source}")"
fi
但是,这个脚本看起来像是已经生成的。我可以编辑它,并且在重建时它不会被覆盖,但我怀疑下次添加 Pod 或类似内容时我会回到原来的位置。
那么:这个脚本来自哪里?如果生成了,如何让它生成正确的readlink代码?这是 Xcode 中的错误还是我自己创建的错误?
最佳答案
更新至 CocoaPods 1.12.1 以获取修复。更多详情请访问https://github.com/CocoaPods/CocoaPods/pull/11828
关于构建脚本 [CP] 嵌入 Pods 框架中的 Xcode 14.3 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/76058465/