【发布时间】:2018-09-26 00:26:08
【问题描述】:
我使用的是 Delphi 10.2.3。昨天我正在为 OSX 构建没有问题(我想)。现在,每次我尝试为 OSX(OSX 10.14 的 SDK)进行构建时,我都会收到异常程序终止,并且 BDS 被吹走。有时我会收到 List Index Out of Bounds (48) 错误 - 如果我没有激活 10.14 SDK。当然,如果我让它激活,BDS 就会被异常程序终止所震撼
现在这是 100% 可重复的。我认为安装可能已损坏,但我没有看到任何修复选项,只是完全卸载并重新安装,如果可以的话,希望避免这种情况(甚至不确定是否会解决问题)。
我在 10.2.3 版本中看到了一个应该已修复的问题:
RSP-19828: 为 OSX 编译会导致“程序异常终止”(bds.exe) 编译器、编译器\Delphi、FireMonkey
但是这个问题只是客户端 macOS 系统上没有安装 XCode。我可以确认 XCode 正在 macOS VM 上运行,并且之前使用 Delphi 10.2.3 创建的应用程序可以部署并运行,所以发生了一些变化,但我不知道是什么?或者更重要的是,如何找到它。
因为这是几天前的工作,即。我可以构建并部署到 macOS(请参阅我的另一个问题 WRT 让 Dylib 做出响应),我已经将 VM 绕回一周左右到较早的快照以确保,但仍然出现错误。代码很简单,一个带有按钮的屏幕,两天前运行良好,我仍然拥有在 macOS VM 上构建和部署的版本。所以那种指向macOS方面?所以我用我的物理macbook(上周再次工作)尝试了它,并且在构建时完全相同,程序异常终止并且BDE被吹走。那么,回到第一方,显然我在 Windows/Delphi 方面做错了什么?
作为测试,我创建了一个没有任何内容的全新项目,即只是一个空白屏幕。每当我尝试编译或构建时,它都会将 BDS 吹走。这是一个绝对的b1ocker。我已经在 Embarcadero 网站上发布过,但到目前为止还没有。
FWIW、Delphi 10.2.3 和 OSX SDK 是 10.14,根据 Embarcadero 文档是正确的。
有什么办法可以克服这个问题吗?
谢谢, 凯文
【问题讨论】:
-
我编辑了你的标签。你没有使用 XE。
-
尝试删除 Mac 上的 scratch-dir 文件夹,例如:/Users/Kevin/PAServer/scratch-dir(其中“Kevin”是用户名)
-
在 Mac 更新 xcode 和命令行工具(真正的 MAC,而不是 vm)之后,我从今天开始遇到完全相同的问题。现在,每当我尝试为 osx 编译时,我也会得到异常程序终止和 IDE 就消失了。这与MAC本身无关。即使 MAC 关闭,它也会这样做,它无法使用 10.14 sdk 为 OSX 编译/链接。
-
@David Heffernan,谢谢
-
RE: delete scratch-dir 谢谢,试过了@Softtouch,好(对你不好)这就是我要去的地方。 XCode 更新 (10) 规定了 SDK (10.14),这就是我认为已经改变的地方。我使用的是 SDK 10.13.6。所以我认为 SDK 10.14 坏了(对于 Delphi)。我已将我的 macOS VM 上的 High Sierra 恢复到 10.13.6,但这并没有改变 SDK Xcode 生成的 (10.14)。所以我删除了 Xcode 10 并安装了 Xcode 9.4.1 (IIRC),它为 10.13.6 构建了 SDK(来自这里:developer.apple.com/download/more)。如果它修复了什么,我会告诉你的。
标签: macos delphi delphi-10.2-tokyo