【问题标题】:Xcode 4 archive warning to skip copy phaseXcode 4 存档警告跳过复制阶段
【发布时间】:2023-04-04 04:20:01
【问题描述】:

我有一个要归档的 Mac 应用。我过去曾使用早期版本的 Xcode 完成此操作,但是当我使用 Xcode 4 存档时,我收到以下警告:

warning: skipping copy phase strip, binary is code signed: .....

警告与必须在构建阶段复制的帮助工具有关。如何解决此警告?

有什么建议吗?

【问题讨论】:

    标签: xcode4 archive


    【解决方案1】:

    解决方案是转到应用程序目标(而不是帮助工具目标)的构建设置,并将 "Strip Debug Symbols during Copy" 设置为 "No"。这是密钥 COPY_PHASE_STRIP

    激活此设置会导致在构建期间复制的二进制文件(例如,在 Copy Bundle Resources 或 Copy Files 构建阶段)被去除调试符号。它不会导致目标的链接产品被剥离(为此使用剥离链接产品)。

    主要问题是您无法从已签名的可执行文件中去除调试符号。这就是您必须跳过此步骤的原因。

    【讨论】:

    • 谢谢——现在说得通了,解决了我的问题。以前只是跳过签署 dylib 资源,但这次在提交到 Mac App Store 时收到警告。这显然是更好的解决方案。
    • 您还可以打开部署后处理、剥离已安装产品和单独剥离,它将剥离二进制文件和仍然代码符号。调试也可以,但只是第一次,如果重新运行,Xcode 4.3 会“重新生成”.dSYM 文件并破坏调试信息。
    • 你摇滚!我厌倦了所有这些构建时间的混乱。你救了我!
    • 这是正确的绅士。发布版本(App Store)应该包含调试符号,这会使您的应用运行速度变慢。
    • @cocoafan 是的!我不是说这是不可能。我是说...作为一种解决方法,它是可以接受的。但是发布带有调试符号的应用程序......无论如何,只是为了消除警告并不是正确的答案。
    猜你喜欢
    • 2015-02-08
    • 1970-01-01
    • 2013-11-15
    • 1970-01-01
    • 2012-07-27
    • 2011-10-03
    • 1970-01-01
    • 2012-08-18
    • 2020-05-29
    相关资源
    最近更新 更多