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

Error Building Webassembly Template WITHOUT threads #56932

Closed
rossunger opened this issue Jan 19, 2022 · 8 comments
Closed

Error Building Webassembly Template WITHOUT threads #56932

rossunger opened this issue Jan 19, 2022 · 8 comments

Comments

@rossunger
Copy link

Godot version

3.4, and latest master

System information

Windows 10, Visual Studio 2022

Issue description

I'm trying to compile export template for HTML, and it seems to produce

godot.javascript.opt.threads.zip

even though I don't have threads enabled. When I try to add threads_enabled=no I get errors:

I'm also not able to generate visual studio project file with scons p=windows vsproj=yes. It runs without error, but doesn't generate the file.

Steps to reproduce

Windows,
Using Scons 4.2
x64 Native Command Prompt for VS 2020 (also tried the x86 x64 Command prompt and x64 x86, and just ordinary administrator privilege cmd)

scons platform=javascript tools=no target=release

expected result: godot.javascript.opt.zip
actual result: godot.javascript.opt.threads.zip

the same thing happens with target=debug

I tried adding threads_enabled=no, but this causes strange errors.

Also,
scons p=windows vsproj=yes executes fine, but nothing happens.

Minimal reproduction project

No response

@rossunger
Copy link
Author

I should mention, I'm new to compiling from source, and I'm feeling kinda lost and overwhelmed with it! apologies if I've misunderstood something.

@akien-mga
Copy link
Member

3.4, and latest master

What you describe is expected in master, and shouldn't happen in 3.4, so can you double checks which versions you tried building?

Godot 4.0 requires threading support, so it's no longer possible to disable it.

@akien-mga
Copy link
Member

I can confirm that it's not possible to build the master branch without threads_enabled=no, despite the option still existing. It fails with:

./core/object/object.h:556:2: error: no type named 'mutex' in namespace 'std'; did you mean 'Mutex'?
        std::mutex _instance_binding_mutex;
        ^~~~~~~~~~
        Mutex
./core/os/mutex.h:102:7: note: 'Mutex' declared here
using Mutex = MutexImpl<FakeMutex>;
      ^

and then a ton of errors since not being able to compile Object means nothing can be compiled.

@akien-mga akien-mga added this to the 4.0 milestone Jan 19, 2022
@rossunger
Copy link
Author

Thanks for the quick response!
This was absolutely my issue!! I was on master branch by accident (I thought I was on 3.4!)

Any thoughts on the vsproj not being generated?

@akien-mga
Copy link
Member

Any thoughts on the vsproj not being generated?

No idea, but that should probably be a new bug report as it's not related to the web platform (as it's to build for Windows). Maybe the current logic is not compatible with VS 2022.

@rossunger
Copy link
Author

ok! thank you

@akien-mga
Copy link
Member

There's still a bug that we need to fix:

#56932 (comment)

@akien-mga akien-mga reopened this Jan 19, 2022
@akien-mga
Copy link
Member

Fixed by #65094.

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

No branches or pull requests

2 participants