BastiaanOlij / gdprocmesh

A procedural mesh generator for Godot build as a GDNative plugin
MIT License
120 stars 13 forks source link

Update to 3.1.1? #28

Closed TheSHEEEP closed 5 years ago

TheSHEEEP commented 5 years ago

I wanted to switch to 3.1.1 (since it fixed a bug that affected my project), therefore I had to recompile this as well. However, there is now an error during compilation of gdprocmesh:

g++ -o src/input/gdprocinmesh.os -c -fPIC -g -O3 -std=c++17 -fPIC -I. -Isrc -Igodot-cpp/godot_headers -Igodot-cpp/include -Igodot-cpp/include/core -Igodot-cpp/include/gen src/input/gdprocinmesh.cpp
src/input/gdprocinmesh.cpp:3:10: fatal error: godot-cpp/src/gen/__icalls.hpp: No such file or directory
 #include "godot-cpp/src/gen/__icalls.hpp"
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
scons: *** [src/input/gdprocinmesh.os] Error 1
scons: building terminated because of errors.

This happens after checking out and compiling the latest master of godot-cpp (which I assume would be 3.1.1, unfortunately, they are not using tags to make this easy).

(PS: My other issue can still be closed, I cannot do that ;) )

BastiaanOlij commented 5 years ago

Hey Jan,

Master is in line with master, you should use the 3.1 branch. I’ll see if i can update it later on just in case.

That said, your problem is that old files don’t get cleaned up. Delete everything in godot-cpp/include/gen and godot-cpp/src/gen except for the .gitignore files Then regenerate the bindings

That should fix it

On Wed, 1 May 2019 at 6:20 pm, Jan D. notifications@github.com wrote:

I wanted to switch to 3.1.1 (since it fixed a bug that affected my project), therefore I had to recompile this as well. However, there is now an error during compilation of gdprocmesh:

g++ -o src/input/gdprocinmesh.os -c -fPIC -g -O3 -std=c++17 -fPIC -I. -Isrc -Igodot-cpp/godot_headers -Igodot-cpp/include -Igodot-cpp/include/core -Igodot-cpp/include/gen src/input/gdprocinmesh.cpp src/input/gdprocinmesh.cpp:3:10: fatal error: godot-cpp/src/gen/__icalls.hpp: No such file or directory

include "godot-cpp/src/gen/__icalls.hpp"

      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

compilation terminated. scons: *** [src/input/gdprocinmesh.os] Error 1 scons: building terminated because of errors.

This happens after checking out and compiling the latest master of godot-cpp (which I assume would be 3.1.1, unfortunately, they are not using tags to make this easy).

(PS: My other issue can still be closed, I cannot do that ;) )

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/BastiaanOlij/gdprocmesh/issues/28, or mute the thread https://github.com/notifications/unsubscribe-auth/AAO262NKZQG3SITYKRMRKADPTFHF3ANCNFSM4HJSKHIQ .

-- Kindest regards,

Bastiaan Olij

https://www.facebook.com/bastiaan.olij https://twitter.com/mux213 https://www.youtube.com/BastiaanOlij https://www.youtube.com/channel/UCrbLJYzJjDf2p-vJC011lYw https://github.com/BastiaanOlij

TheSHEEEP commented 5 years ago

I'm a bit confused by that. The update notes to 3.1.1 specifically said that GDnative modules need to be recompiled from source due to API changes. So I assumed that godot-cpp (and/or godot_headers) changed - otherwise a recompilation wouldn't make sense. But the 3.1 branch of godot-cpp hasn't been updated in 20 days (25 for godot_headers) - while the 3.1.1 update was not even a week ago. Is this just a misunderstanding?

I can just give it a try, anyway, in a few hours.

Also, I did a git clean -xfd before building godot-cpp and gdprocmesh again (learning from my last mistake ;) ). That should make sure I don't need to delete anything manually, shouldn't it?

BastiaanOlij commented 5 years ago

The current master of Godot is even further ahead :) Though I doubt it will make much of a difference unless you're doing VR stuff.

Yeah I would assume the clean would work, I just know that someone recently changed the location of that icalls file so the .h file is now in include, not in src

BastiaanOlij commented 5 years ago

I'm still not sure where your issue came from but I just spend an hour or two getting both godot_header master and godot_headers 3.1 up to date and making sure godot-cpp compiles

gdprocmesh now uses the latest godot-cpp 3.1 branch and it all compiles fine for me. Let me know how you go

TheSHEEEP commented 5 years ago

Compiles fine for me too, and works for 3.1.1 Godot as well. Resolved for me.