获取“来自调试器的消息:错误 1” - 用于简单项目(在 Xcode 11.0 11A420a 中)[重复]

Posted

技术标签:

【中文标题】获取“来自调试器的消息:错误 1” - 用于简单项目(在 Xcode 11.0 11A420a 中)[重复]【英文标题】:Getting "Message from debugger: Error 1" - for simple project (in Xcode 11.0 11A420a) [duplicate] 【发布时间】:2021-05-05 06:18:52 【问题描述】:

我的代码很简单:

#include <stdio.h>

int main(int argc, const char * argv[]) 
    // insert code here...
    printf("Hello, World!\n");
    
    printf(" sizeof int = %lu\n", sizeof(int));
    
    return 0;

在 xcode 上运行并得到错误:

Message from debugger: Error 1
Program ended with exit code: -1

运行终端:

【问题讨论】:

请不要将代码发布为图片 - reasoning。将其作为格式化文本复制到问题中。 这几天前在 Xcode 11 中开始发生在我身上,我完全不知道为什么。就我而言,这可能与必须同时吊销证书有关。 这应该被标记为重复,因为其他问题正在处理更复杂的情况。 【参考方案1】:

点击PROJECT设置Signing & Capabilities,在Signing - Signing Certificate中,如果你选择的是“Development”,可以改成“Sign to Run Locally”试试看。

如果您没有开发认证,则不能使用该证书模式进行编码。

【讨论】:

这可行,但只要我们不使用特定功能(如网络扩展),这些功能仅适用于付费 Apple-ID。【参考方案2】:

您发布的代码在配置为命令行工具的 Xcode 12 项目中运行良好。这是输出:

Hello, World!
 sizeof int = 4
Program ended with exit code: 0

尝试将相同的代码粘贴到新项目中,然后再次将其设置为命令行工具。您不需要对项目默认设置进行任何更改。如果可行,请将其与您的原始项目进行比较;失败的原因是在原始项目的配置中。

【讨论】:

【参考方案3】:

发件人:https://developer.apple.com/library/archive/qa/qa1884/_index.html

问:当我运行我的 Mac 应用程序时,它立即崩溃,并且崩溃日志显示异常类型:EXC_CRASH(代码签名无效)。这是怎么回事?

答:崩溃日志表明您的应用使用您的 Mac App Store 分发身份进行签名,证书的主题通用名称以“3rd Party Mac Developer Application”开头。以这种方式签名的 Mac 应用程序无法再直接运行。这是这方面的背景。

随着时间的推移,已经添加了更多需要来自配置文件的权利的 Mac App Store 技术。这始于推送通知和 iCloud。后来,游戏中心和地图被添加到列表中。

最近,com.apple.developer.team-identifier 权利已添加到所有新的 Mac 配置文件中。这意味着,今后 Mac 应用程序的分发版本将无法直接运行;它们仅用于提交到 iTunes Connect 以供应用审核

相反,开发人员应采用 QA1778: How to reproduce bugs reported against Mac App Store submissions 中的存档构建工作流程来测试他们计划提交给 Mac App Store 的构建。在 Xcode 6 上,选择 Export as a Mac Application。您将看不到任何选择您的开发签名身份的机会,但 Xcode 将从存档中导出应用程序,因为它是在构建时签名的。所以结果是一样的。

您可以使用productbuild 工具手动创建包含开发签名应用的安装程序包,如下所示:

$ productbuild --component Sample.app /Applications --sign “3rd Party Mac Developer Installer:" Sample.pkg

然后按照Testing the Mac Installer Package 中的说明安装软件包:

$ sudo installer -store -pkg Sample.pkg -target /

此工作流程意味着您需要将 Beta 测试人员的测试系统添加到您的 Mac 开发人员计划帐户,以便他们能够运行您的应用。

另一种可能性是使用Xcode Organizer &gt; Export &gt; Export a Developer ID-signed Application。任何人都可以运行开发者 ID 签名的应用程序。但是,如果您的应用程序经过 Developer ID 签名,则使用仅适用于 Mac App Store 应用程序的技术(例如收据验证、iCloud 和推送通知)的代码将不起作用。如果您选择 Developer ID 测试方法,您可能需要暂时禁用应用的这些部分。

【讨论】:

【参考方案4】:

我也有同样的问题,很烦。

screenshot-img

这些设置解决了我的问题。你可以试一试。

【讨论】:

您应该详细说明为什么您认为这可以解决问题。 帮我修好了,谢谢。 这可行,但只要我们不使用特定功能(如网络扩展),这些功能仅适用于付费 Apple-ID。

以上是关于获取“来自调试器的消息:错误 1” - 用于简单项目(在 Xcode 11.0 11A420a 中)[重复]的主要内容,如果未能解决你的问题,请参考以下文章

NSPredicate 用于 NSFetchRequest 中的多个匹配项

ABPHelper.CLI及其依赖项简单介绍

linux下c语言简单实现获取配置文件中的配置项

linux下c语言简单实现获取配置文件中的配置项

Gradle - 获取依赖项的 URL

用于计算重复项的 SQL 查询 [重复]