Xcode 11.4-归档项目-Segmentation Fault 11


12

我刚刚将Xcode更新为11.4,并且在归档项目时显示为“ Segmentation Fault 11”

该项目将使用Xcode 11.3.1存档,但现在没有。

还有其他人遇到同样的问题吗?

在此处输入图片说明

编辑:2020年4月15日

苹果刚刚发布了Xcode 11.4.1



3
@Tom谢谢你,但是那不能解决..我很确定这是一个苹果漏洞
Artur Marchetto

Answers:


11

我遇到了同样的问题。归档使用Release版本的配置,因此我遍历了每个编译器设置,以找出哪些差异导致了这些Segmentation错误。

就我而言,当我将“ 启用可测试性设置更改为“是”时,问题消失了版本

不,我不知道在存档或发行版本中有什么弊端,或者确实为什么这种特殊设置可以缓解问题,但总的来说,我有一个项目花费了一年的时间才能进入此阶段而且我非常希望将其提交给内部Beta测试人员,因此我将通过试飞提交此文件,并查看我的工作方式。

我的感觉是这绝对是Apple的错误,因为编译器根本不会出现Seg Faulting。它在Debug配置下编译的事实为此提供了支持。我的项目很大,以至于我不知道如何重现该错误以提交错误,但是我将在Apple论坛上看看能否得到一些回应。


在Xcode 11.4.1中遇到了同样的问题,更改此设置也对我有用。文档说此标志与使专用接口可访问有关,因此可能存在一些...激活此设置后,将使用适合于运行自动化测试的选项来构建产品,例如使专用接口可用于自动测试。测试。与未启用可测试性的测试相比,这可能导致测试的运行速度变慢。
keegan3d

5

对我来说,帮助查找问题,当我在构建设置中设定的SWIFT_COMPILATION_MODEwholemodule。然后在编译后出现一个更具体的错误,该错误导致类函数引起该错误。之后将其恢复原样。

也许它也可以帮助您。

在我的情况下,使用三元运算符作为初始输入参数集。似乎Swift 5.2不再支持它。

// Leads to error with Xcode 11.4
init(value: UIColor = Constants.staticBoolean ? .white : .green)

2
非常感谢!!你让我今天一整天都感觉很好!!
nomnom

3
那也解决了我的构建时间错误。缺省参数中的三元运算符是元凶。希望苹果尽快修复该错误。
稻香

2
我没有使用Swift master分支github.com/apple/swift/tree/master复制。所以也许已经解决了。
心教堂

1

就我而言,我在Eureka pod上遇到了错误

Segmentation fault: 11 (in target 'Eureka' from project 'Pods')

在Pods文件中,我提供了最新版本:

pod 'Eureka', '~> 5.2.1'

SWIFT_COMPILATION_MODE设置为wholemodule


0

我改#imageLiteral(resourceName: "image_name")UIImage(imageLiteralResourceName: "image_name")


0

像其他响应者一样,这里的错误消息中也隐藏了一个SwiftUI问题(使用Xcode 11.4)。就我而言,使用.embedInScrollView()会导致生成错误。禁用这些呼叫可以解决问题。作为一种解决方法,我将.embedInScrollView()ViewModifier放入了这样的代码:

public struct WrapInScrollView: ViewModifier {
    public func body(content: Content) -> some View {
        content
            .embedInScrollView()
    }

    public init() {}
}

然后,我使用该修饰符有点像原始调用,如下所示:

.modifier(WrapInScrollView())

这意味着您仍然可以嵌入scrollView中,但Seg 11错误会消失。


0

不幸的是,启用可测试性解决方案对我不起作用。

暂时的解决方法(直到Apple将解决Xcode 11.4 Swift编译器问题)是将失败的目标上的“ 优化级别”设置为“ 无优化 ”以进行发布SWIFT_OPTIMIZATION_LEVEL = "-Onone";。它适用于我们的项目,该项目分为多个框架。只需设置一个即可-Onone

但是Apple文档要求不要使用此标志运送代码。用于开发,它执行最少的优化并保留所有调试信息。

我认为我们必须等待:'(


-1

我收到此异常,存档日志帮助我了解它在特定的SwiftUI文件中。通过淘汰的过程,结果证明我离开了contentInsets()alwaysBounceVertical()修饰符VStack,而这不是a的一部分List

VStack {
    // more stuff
}
.contentInsets(UIEdgeInsets(top: 20, left: 0, bottom: 0, right: 0))
.alwaysBounceVertical()

删除这些修饰符可使发行档案成功完成。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.