kestrelm / Creature_Godot

2D Skeletal Animation Creature Runtime for Godot Engine
Apache License 2.0
84 stars 12 forks source link

Godot compiling error (only happens when I add creaturegodot module) #12

Closed Qws closed 6 years ago

Qws commented 6 years ago

When I compile Godot 3 with creaturegodot plugin inside the module folder I'm getting an error message on my cmd:

C:\tmp\godot-3.0>scons platform=windows
scons: Reading SConscript files ...
Detected MSVC compiler: x86
Compiled program architecture will be a 32 bit executable. (forcing bits=32).
TypeError: can_build() takes exactly 2 arguments (1 given):
  File "C:\tmp\godot-3.0\SConstruct", line 407:
    if (config.can_build(selected_platform)):

I'm assuming it's a creaturegodot module issue because when I compile Godot 3 without the module it compiles fine. Anyone knows how to solve this?

I'm using the Godot 3.0 stable branch.

Qws commented 6 years ago

I tried it again this time with Godot Master Branche (commit: de0fb07)... a bit better but now I'm getting this error:

[Initial build] Compiling ==> modules\bullet\space_bullet.cpp
space_bullet.cpp
[Initial build] Compiling ==> modules\creaturegodot\creaturegodot.cpp
creaturegodot.cpp
modules\creaturegodot\creaturegodot.cpp(258): error C3892: 'Vector<Color>::operator []': you cannot assign to a variable that is const
modules\creaturegodot\creaturegodot.cpp(259): error C3892: 'Vector<Color>::operator []': you cannot assign to a variable that is const
modules\creaturegodot\creaturegodot.cpp(260): error C3892: 'Vector<Color>::operator []': you cannot assign to a variable that is const
modules\creaturegodot\creaturegodot.cpp(261): error C3892: 'Vector<Color>::operator []': you cannot assign to a variable that is const
modules\creaturegodot\creaturegodot.cpp(340): error C3892: 'Vector<int>::operator []': you cannot assign to a variable that is const
modules\creaturegodot\creaturegodot.cpp(361): error C2678: binary '=': no operator found which takes a left-hand operand of type 'const Vector2' (or there is no acceptable conversion)
c:\tmp\godot-master\core\math\vector2.h(145): note: could be 'Vector2 &Vector2::operator =(Vector2 &&)'
c:\tmp\godot-master\core\math\vector2.h(145): note: or       'Vector2 &Vector2::operator =(const Vector2 &)'
modules\creaturegodot\creaturegodot.cpp(361): note: while trying to match the argument list '(const Vector2, Vector2)'
modules\creaturegodot\creaturegodot.cpp(365): error C2678: binary '=': no operator found which takes a left-hand operand of type 'const Vector2' (or there is no acceptable conversion)
c:\tmp\godot-master\core\math\vector2.h(145): note: could be 'Vector2 &Vector2::operator =(Vector2 &&)'
c:\tmp\godot-master\core\math\vector2.h(145): note: or       'Vector2 &Vector2::operator =(const Vector2 &)'
modules\creaturegodot\creaturegodot.cpp(365): note: while trying to match the argument list '(const Vector2, Vector2)'
modules\creaturegodot\creaturegodot.cpp(612): error C3892: 'Vector<int>::operator []': you cannot assign to a variable that is const
modules\creaturegodot\creaturegodot.cpp(626): error C3892: 'Vector<int>::operator []': you cannot assign to a variable that is const
modules\creaturegodot\creaturegodot.cpp(637): error C3892: 'Vector<int>::operator []': you cannot assign to a variable that is const
modules\creaturegodot\creaturegodot.cpp(651): error C3892: 'Vector<int>::operator []': you cannot assign to a variable that is const
scons: *** [modules\creaturegodot\creaturegodot.windows.tools.32.obj] Error 2
scons: building terminated because of errors.

C:\tmp\godot-master>
Ranoller commented 6 years ago

There are changes in accesing vectors, need to specific use vector.write[member] ..... there are other changes in the last days. math library has been splited. I fixed first breaking thing in dragonbones module. second not jet. i will not fix in creature or spine runtimes... don't have time (and i'm customer of both programs). There are both comercial programs, i hope there is some employe taking care of godot development... you can investigate changes in dragonbones module if you want to autoassign this issue. (and later follow the compiler line error and make the changes in this plugin codebase).

kestrelm commented 6 years ago

@Qws The first error is not an error actually, the version of creature builds with the master branch since they changed their build scripts.

kestrelm commented 6 years ago

@Qws @Ranoller Please sync up again, just checked in a change that makes it compile with the latest master. Also tested with a couple of samples and it runs. Thanks.

Qws commented 6 years ago

I think the build script changed again, I'm unable to compile Creature for Godot :( @kestrelm


[Initial build] Compiling ==> modules\creaturegodot\MeshBone.cpp
MeshBone.cpp
[Initial build] Compiling ==> modules\creaturegodot\creaturegodot.cpp
creaturegodot.cpp
c:\tmp\godot-massterrrrr\godot\modules\creaturegodot\creaturegodot.h(5): fatal error C1083: Cannot open include file: 'reference.h': No such file or directory
scons: *** [modules\creaturegodot\creaturegodot.windows.tools.64.obj] Error 2
scons: building terminated because of errors.
kestrelm commented 6 years ago

Hello, Just updated again. Sync and try again. It now builds on the latest master.

Thanks