Skip to content

Exported project crash on launch on macOS 10.15 intel mac (Metal library linking issue?) #120973

Description

@lostminds

Tested versions

Reproducible in 4.7
Not reproducible in 4.6.3

System information

macOS 10.15 intel-based Mac Pro

Issue description

Testing a project exported with Godot 4.7 it seems the update has broken something with the metal driver initiation on older systems. Not sure if this is an intel-mac issue or just an issue with the older macOS 10.15 (According to requirements oldest supported macOS for the Mobile renderer)

Godot error logged:

Godot Engine v4.7.stable.official. 5b4e0cb0f https://godotengine.org/ Vulkan 1.2.334 Forward Mobile Using Device #0: NVIDIA NVIDIA GeForce GT 75
OM
- [MTLHeap DescriptorInternal validateWithDevice:]: 327: failed assertion 'Heap Des criptor Validation Placement heap type is not supported.
Abort trap: 6 logout Saving session... copying shared history.
...saving history... truncating history files... completed.
[Process completed]

And if you run the program from the terminal you also get this message which seems to indicate it's failing to link with some Metal library at startup:

dyld: Symbol not found: _MTLCommandBufferEncoderInfoErrorKey
  Referenced from: <PATH TO EXECUTABLE HERE>
  Expected in: /System/Library/Frameworks/Metal.framework/Versions/A/Metal
 in <PATH TO EXECUTABLE HERE>
Abort trap: 6

The same project exported with Godot 4.6.3 launches fine on the same device.

Steps to reproduce

Export a project using Mobile renderer (or I assume Forward+) with the default Metal driver in Godot 4.7
Try to run this on an intel-based mac running macOS 10.15

Minimal reproduction project (MRP)

Should apply to all godot exports using the metal render driver.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions