Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[M1 Mac] Godot crashes on opening project with plugin installed #337

Open
chipsenkbeil opened this issue May 10, 2024 · 11 comments
Open

[M1 Mac] Godot crashes on opening project with plugin installed #337

chipsenkbeil opened this issue May 10, 2024 · 11 comments
Labels

Comments

@chipsenkbeil
Copy link

chipsenkbeil commented May 10, 2024

Describe the bug

After installing the plugin via the asset library, ensuring it is placed within the addons library, Godot can no longer load the project. Every time I select the project, the Godot engine crashes.

I do have the official Git Godot plugin (https://github.com/godotengine/godot-git-plugin) installed within the addons directory prior to installing Orchestrator.

Expected behavior

No crash occurs.

Actual behavior

Engine crashes upon loading the project.

How to Reproduce?

Using an M1 Mac, install Godot 4.2.2.
From there, using the asset library, download the latest version of Orchestrator. Make sure to uncheck the ignore root box such that it installs in the addons directory.
Select "Save and Restart" when prompted.

Observe that Godot reports it crashed. On future loading, the project selection dialog is presented, and selecting the project will crash the engine.

Godot full version

v4.2.2.stable.official [15073afe3]

Orchestrator version

2.0.1:

Additional information

Using an M1 Mac Mini with MacOS Sonoma 14.4.1.

@chipsenkbeil
Copy link
Author

Video demonstrating installation & crash

godot-orchestrator-crash.mp4

@legbo
Copy link

legbo commented May 10, 2024

Have you tried running it without the git plugin? I have now discovered that the same thing happens to me on Linux if the project has a git plugin. Without git plugin, Orchestrator plugin works fine.

For some reason everything works fine for example with limboAI plugin and Orchestrator plugin, very strange.

@Naros
Copy link
Member

Naros commented May 10, 2024

That's a great find @legbo, could it actually be that the git-plugin is the problem here working with GDExtensions?

@legbo
Copy link

legbo commented May 10, 2024

@Naros I tested Orchestrator plugin and latest Jolt extension and all is working fine together. But with random plugin from Asset library like Godot Steam not working, project (editor) started but then crashed.

I tried to start plugins (Git, LimboAI, GodotSteam, Jolt) one by one without Orchestrator, and all is working fine.

Console output, Orchestrator with Godot Steam:

================================================================
handle_crash: Program crashed with signal 11
Engine version: Godot Engine v4.2.2.stable.official (15073afe3856abd2aa1622492fe50026c7d63dc1)
Dumping the backtrace. Please include this when reporting the bug to the project developer.
[1] /usr/lib/libc.so.6(+0x40770) [0x7fa087952770] (??:0)
[2] /home/lukevost/Godot/Godot_v4.2.2-stable_linux.x86_64() [0x36c83f1] (??:0)
[3] /home/lukevost/Godot/Godot_v4.2.2-stable_linux.x86_64() [0xb33881] (??:0)
[4] godot::OS::has_feature(godot::String const&) const (??:0)
[5] OScriptNode::_is_in_editor() (??:0)
[6] OScriptNodeFunctionTerminator::post_initialize() (??:0)
[7] OScript::post_initialize() (??:0)
[8] OScriptResourceLoaderInstance::load(godot::Ref<godot::FileAccess> const&) (??:0)
[9] OScriptResourceLoader::_load(godot::String const&, godot::String const&, bool, int) const (??:0)
[10] godot::ResourceFormatLoader::register_virtuals<OScriptResourceLoader, godot::ResourceFormatLoader>()::{lambda(void*, void const* const*, void*)#11}::_FUN(void*, void const* const*, void*) (??:0)
[11] /home/lukevost/Godot/Godot_v4.2.2-stable_linux.x86_64() [0x3882a75] (??:0)
[12] /home/lukevost/Godot/Godot_v4.2.2-stable_linux.x86_64() [0x388aa3d] (??:0)
[13] /home/lukevost/Godot/Godot_v4.2.2-stable_linux.x86_64() [0x389c747] (??:0)
[14] /home/lukevost/Godot/Godot_v4.2.2-stable_linux.x86_64() [0x38eb795] (??:0)
[15] /home/lukevost/Godot/Godot_v4.2.2-stable_linux.x86_64() [0x2b95782] (??:0)
[16] /home/lukevost/Godot/Godot_v4.2.2-stable_linux.x86_64() [0x388aa3d] (??:0)
[17] /home/lukevost/Godot/Godot_v4.2.2-stable_linux.x86_64() [0x389c747] (??:0)
[18] /home/lukevost/Godot/Godot_v4.2.2-stable_linux.x86_64() [0x38eb795] (??:0)
[19] /home/lukevost/Godot/Godot_v4.2.2-stable_linux.x86_64() [0x2b95782] (??:0)
[20] /home/lukevost/Godot/Godot_v4.2.2-stable_linux.x86_64() [0x388aa3d] (??:0)
[21] /home/lukevost/Godot/Godot_v4.2.2-stable_linux.x86_64() [0x389c747] (??:0)
[22] /home/lukevost/Godot/Godot_v4.2.2-stable_linux.x86_64() [0x38eb795] (??:0)
[23] /home/lukevost/Godot/Godot_v4.2.2-stable_linux.x86_64() [0x38ec33d] (??:0)
[24] /home/lukevost/Godot/Godot_v4.2.2-stable_linux.x86_64() [0x3ff2207] (??:0)
[25] /home/lukevost/Godot/Godot_v4.2.2-stable_linux.x86_64() [0x12454c7] (??:0)
[26] /home/lukevost/Godot/Godot_v4.2.2-stable_linux.x86_64() [0x3ba02d0] (??:0)
[27] /home/lukevost/Godot/Godot_v4.2.2-stable_linux.x86_64() [0xa81b83] (??:0)
[28] /home/lukevost/Godot/Godot_v4.2.2-stable_linux.x86_64() [0x116c9cd] (??:0)
[29] /home/lukevost/Godot/Godot_v4.2.2-stable_linux.x86_64() [0x3b3a578] (??:0)
[30] /home/lukevost/Godot/Godot_v4.2.2-stable_linux.x86_64() [0x2091204] (??:0)
[31] /home/lukevost/Godot/Godot_v4.2.2-stable_linux.x86_64() [0x209260b] (??:0)
[32] /home/lukevost/Godot/Godot_v4.2.2-stable_linux.x86_64() [0x2095ee1] (??:0)
[33] /home/lukevost/Godot/Godot_v4.2.2-stable_linux.x86_64() [0x4f877d] (??:0)
[34] /home/lukevost/Godot/Godot_v4.2.2-stable_linux.x86_64() [0x41e8b8] (??:0)
[35] /usr/lib/libc.so.6(+0x29cd0) [0x7fa08793bcd0] (??:0)
[36] /usr/lib/libc.so.6(__libc_start_main+0x8a) [0x7fa08793bd8a] (??:0)
[37] /home/lukevost/Godot/Godot_v4.2.2-stable_linux.x86_64() [0x42a59a] (??:0)
-- END OF BACKTRACE --
================================================================

Console output, Orchestrator with Git plugin:

Editing project: /home/lukevost/Orchestrator2

================================================================
handle_crash: Program crashed with signal 11
Engine version: Godot Engine v4.2.2.stable.official (15073afe3856abd2aa1622492fe50026c7d63dc1)
Dumping the backtrace. Please include this when reporting the bug to the project developer.
[1] /usr/lib/libc.so.6(+0x40770) [0x7f9857ae0770] (??:0)
[2] /home/lukevost/Godot/Godot_v4.2.2-stable_linux.x86_64() [0x3b40ebe] (??:0)
[3] /home/lukevost/Godot/Godot_v4.2.2-stable_linux.x86_64() [0x58face] (??:0)
[4] godot::RefCounted::reference() (??:0)
[5] Logger::Logger(godot::Ref<godot::FileAccess> const&) (??:0)
[6] LoggerFactory::create(godot::String const&) (??:0)
[7] orchestrator::initialize_extension_module(godot::ModuleInitializationLevel) (??:0)
[8] godot::GDExtensionBinding::initialize_level(void*, GDExtensionInitializationLevel) (??:0)
[9] /home/lukevost/Godot/Godot_v4.2.2-stable_linux.x86_64() [0x3b4f89b] (??:0)
[10] /home/lukevost/Godot/Godot_v4.2.2-stable_linux.x86_64() [0x3fa6d9c] (??:0)
[11] /home/lukevost/Godot/Godot_v4.2.2-stable_linux.x86_64() [0x41e71d] (??:0)
[12] /usr/lib/libc.so.6(+0x29cd0) [0x7f9857ac9cd0] (??:0)
[13] /usr/lib/libc.so.6(__libc_start_main+0x8a) [0x7f9857ac9d8a] (??:0)
[14] /home/lukevost/Godot/Godot_v4.2.2-stable_linux.x86_64() [0x42a59a] (??:0)
-- END OF BACKTRACE --
================================================================

@chipsenkbeil
Copy link
Author

chipsenkbeil commented May 10, 2024

When I try to run from the console, I get the below error. Removing the Godot git plugin (https://github.com/godotengine/godot-git-plugin) lets me boot up the project. So seems like there is some issue with the two existing at the same time as you two have stated. 😄

================================================================
handle_crash: Program crashed with signal 11
Engine version: Godot Engine v4.2.2.stable.official (15073afe3856abd2aa1622492fe50026c7d63dc1)
Dumping the backtrace. Please include this when reporting the bug to the project developer.
[1] 1   libsystem_platform.dylib            0x0000000183337584 _sigtramp + 56
[2] Object::can_translate_messages() const
[3] Object::can_translate_messages() const
[4] godot::RefCounted::reference()
[5] LoggerFactory::create(godot::String const&)
[6] orchestrator::initialize_extension_module(godot::ModuleInitializationLevel)
[7] godot::GDExtensionBinding::initialize_level(void*, GDExtensionInitializationLevel)
[8] CallableCustomExtension::default_compare_less(CallableCustom const*, CallableCustom const*)
[9] RenderSceneBuffersConfiguration::set_texture_mipmap_bias(float)
[10] RendererCompositorRD::_create_current()
[11] RendererCompositorRD::_create_current()
[12] 12  dyld                                0x0000000182f7e0e0 start + 2360
-- END OF BACKTRACE --
================================================================
zsh: abort      /Applications/Godot.app/Contents/MacOS/Godot

@Naros
Copy link
Member

Naros commented May 10, 2024

So what all these have in common is writing to the user://orchestrator.log file.

I really do not grok what causes this problem. We originally had issues with the logger on certain distributions that were using some really odd compiler switches to their distributions, such as Arch Linux, that were not including some standard C++ library functions that caused crashes. We rolled that back to pure C, but it seems to be an issue on MacOS.

Overall this points to the logger, could this be a permissions issue writing to user://orchestrator.log?

@Naros
Copy link
Member

Naros commented May 10, 2024

hi @legbo so this stack trace is interesting:

================================================================
handle_crash: Program crashed with signal 11
Engine version: Godot Engine v4.2.2.stable.official (15073afe3856abd2aa1622492fe50026c7d63dc1)
Dumping the backtrace. Please include this when reporting the bug to the project developer.
[1] /usr/lib/libc.so.6(+0x40770) [0x7fa087952770] (??:0)
[2] /home/lukevost/Godot/Godot_v4.2.2-stable_linux.x86_64() [0x36c83f1] (??:0)
[3] /home/lukevost/Godot/Godot_v4.2.2-stable_linux.x86_64() [0xb33881] (??:0)
[4] godot::OS::has_feature(godot::String const&) const (??:0)
[5] OScriptNode::_is_in_editor() (??:0)
[6] OScriptNodeFunctionTerminator::post_initialize() (??:0)
[7] OScript::post_initialize() (??:0)
[8] OScriptResourceLoaderInstance::load(godot::Ref<godot::FileAccess> const&) (??:0)
[9] OScriptResourceLoader::_load(godot::String const&, godot::String const&, bool, int) const (??:0)
[10] godot::ResourceFormatLoader::register_virtuals<OScriptResourceLoader, godot::ResourceFormatLoader>()::{lambda(void*, void const* const*, void*)#11}::_FUN(void*, void const* const*, void*) (??:0)

This actually doesn't indicate an issue with Orchestrator but rather an issue between Godot and GLIBC.

Our _is_in_editor() function deletes directly to godot:

bool OScriptNode::_is_in_editor()
{
    return OS::get_singleton()->has_feature("editor");
}

This would indicate that either (a) the OS singleton is null, which is a Godot build issue. Or it indicates that there is an issue with the underlying Godot calls internally that resolve whether the editor feature is or is not enabled.

What version of GLIBC is installed?

Additionally, this also smells of a GLIBC compatibility issue:

================================================================
handle_crash: Program crashed with signal 11
Engine version: Godot Engine v4.2.2.stable.official (15073afe3856abd2aa1622492fe50026c7d63dc1)
Dumping the backtrace. Please include this when reporting the bug to the project developer.
[1] /usr/lib/libc.so.6(+0x40770) [0x7f9857ae0770] (??:0)
[2] /home/lukevost/Godot/Godot_v4.2.2-stable_linux.x86_64() [0x3b40ebe] (??:0)
[3] /home/lukevost/Godot/Godot_v4.2.2-stable_linux.x86_64() [0x58face] (??:0)
[4] godot::RefCounted::reference() (??:0)
[5] Logger::Logger(godot::Ref<godot::FileAccess> const&) (??:0)
[6] LoggerFactory::create(godot::String const&) (??:0)

@legbo
Copy link

legbo commented May 10, 2024

@Naros,

ldd --version
ldd (GNU libc) 2.39-1.1

@RoyvanEmpel
Copy link

I have the same issue with Orchestrator on Linux, once both git and orchestrator are installed godot no longer starts.

================================================================
handle_crash: Program crashed with signal 11
Engine version: Godot Engine v4.2.2.stable.official (15073afe3856abd2aa1622492fe50026c7d63dc1)
Dumping the backtrace. Please include this when reporting the bug to the project developer.
[1] /lib/x86_64-linux-gnu/libc.so.6(+0x42990) [0x7cc034242990] (??:0)
[2] /home/roy/.steam/debian-installation/steamapps/common/Godot Engine/godot.x11.opt.tools.64() [0x3b40ebe] (??:0)
[3] /home/roy/.steam/debian-installation/steamapps/common/Godot Engine/godot.x11.opt.tools.64() [0x58face] (??:0)
[4] godot::RefCounted::reference() (??:0)
[5] Logger::Logger(godot::Ref<godot::FileAccess> const&) (??:0)
[6] LoggerFactory::create(godot::String const&) (??:0)
[7] orchestrator::initialize_extension_module(godot::ModuleInitializationLevel) (??:0)
[8] godot::GDExtensionBinding::initialize_level(void*, GDExtensionInitializationLevel) (??:0)
[9] /home/roy/.steam/debian-installation/steamapps/common/Godot Engine/godot.x11.opt.tools.64() [0x3b4f89b] (??:0)
[10] /home/roy/.steam/debian-installation/steamapps/common/Godot Engine/godot.x11.opt.tools.64() [0x3fa6d9c] (??:0)
[11] /home/roy/.steam/debian-installation/steamapps/common/Godot Engine/godot.x11.opt.tools.64() [0x41e71d] (??:0)
[12] /lib/x86_64-linux-gnu/libc.so.6(+0x28150) [0x7cc034228150] (??:0)
[13] /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0x89) [0x7cc034228209] (??:0)
[14] /home/roy/.steam/debian-installation/steamapps/common/Godot Engine/godot.x11.opt.tools.64() [0x42a59a] (??:0)
-- END OF BACKTRACE --
================================================================

GLIBC
ldd (Ubuntu GLIBC 2.38-1ubuntu6.3) 2.38

@Naros
Copy link
Member

Naros commented Jun 9, 2024

Hi @RoyvanEmpel can you provide information about what Linux OS, distribution and patch level, including what version of git you installed. Thanks.

@RoyvanEmpel
Copy link

Hi 👋🏻, don't know what you mean with patch level but here if the other info you asked for:

OS: Kubuntu 23.10
Kernel: 6.8.10-2-liquorix-amd64
Plasma: 5.27.8
git: 2.40.1

Can i provide any more info?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

4 participants