I am attempting to build the code on Windows.
Following the instructions on this page.
https://esotericsoftware.com/spine-godot
Building without the c# requirements.
Exports build just fine. However when trying to build the editor I get the following error.
$ ./build-v4.sh
Building Godot without C# support
CPUS: 20
/c/work/Godot-Spine/spine-runtimes/spine-godot/godot /c/work/Godot-Spine/spine-runtimes/spine-godot/build /c/work/Godot-Spine/spine-runtimes/spine-godot/build
scons: Reading SConscript files ...
C:\work\Godot-Spine\spine-runtimes\spine-godot\godot\methods.py:1022: SyntaxWarning: invalid escape sequence '\)'
"(?:(?<=version )|(?<=\) )|(?<=^))"
C:\work\Godot-Spine\spine-runtimes\spine-godot\godot\methods.py:1023: SyntaxWarning: invalid escape sequence '\d'
"(?P<major>\d+)"
C:\work\Godot-Spine\spine-runtimes\spine-godot\godot\methods.py:1024: SyntaxWarning: invalid escape sequence '\.'
"(?:\.(?P<minor>\d*))?"
C:\work\Godot-Spine\spine-runtimes\spine-godot\godot\methods.py:1025: SyntaxWarning: invalid escape sequence '\.'
"(?:\.(?P<patch>\d*))?"
C:\work\Godot-Spine\spine-runtimes\spine-godot\godot\methods.py:1027: SyntaxWarning: invalid escape sequence '\+'
"(?:\+(?P<metadata2>[0-9a-zA-Z-]*))?"
C:\work\Godot-Spine\spine-runtimes\spine-godot\godot\platform\linuxbsd\detect.py:451: SyntaxWarning: invalid escape sequence '\d'
gnu_ld_version = re.search("^GNU ld [^$]*(\d+\.\d+)$", linker_version_str, re.MULTILINE)
C:\work\Godot-Spine\spine-runtimes\spine-godot\godot\platform\windows\detect.py:469: SyntaxWarning: invalid escape sequence '\w'
env.Append(LINKFLAGS=["/NATVIS:platform\windows\godot.natvis"])
The code in that python files looks as follows.
def get_compiler_version(env):
"""
Returns an array of version numbers as ints: [major, minor, patch].
The return array should have at least two values (major, minor).
"""
if not env.msvc:
# Not using -dumpversion as some GCC distros only return major, and
# Clang used to return hardcoded 4.2.1: # https://reviews.llvm.org/D56803
try:
version = subprocess.check_output([env.subst(env["CXX"]), "--version"]).strip().decode("utf-8")
except (subprocess.CalledProcessError, OSError):
print("Couldn't parse CXX environment variable to infer compiler version.")
return None
else: # TODO: Implement for MSVC
return None
match = re.search(
"(?:(?<=version )|(?<=\) )|(?<=^))"
"(?P<major>\d+)"
"(?:\.(?P<minor>\d*))?"
"(?:\.(?P<patch>\d*))?"
"(?:-(?P<metadata1>[0-9a-zA-Z-]*))?"
"(?:\+(?P<metadata2>[0-9a-zA-Z-]*))?"
"(?: (?P<date>[0-9]{8}|[0-9]{6})(?![0-9a-zA-Z]))?",
version,
)
if match is not None:
return match.groupdict()
else:
return None
The strings are not correctly specified should be a double \
I am not very knowledgeable about how the SCons build system works of even when those files are created/downlaoded from. I cant find them in the repo.
If I correct those escape characters I get a build issue later that I think is more of an issue perhaps environmental
Found MSVC version 14.2, arch x86_64
Building for platform "windows", architecture "x86_64", target "editor".
debug: 12204ms:MSCommon/vc.py:get_default_version#1275: msvc_version:14.2 msvs_version:14.2
debug: 12205ms:MSCommon/vc.py:get_host_target#577: HOST_ARCH:x86_64
debug: 12205ms:MSCommon/vc.py:get_host_target#585: TARGET_ARCH:amd64
KeyError: 0:
File "C:\work\Godot-Spine\spine-runtimes\spine-godot\godot\SConstruct", line 960:
methods.generate_vs_project(env, GetOption("num_jobs"), env["vsproj_name"])
File "C:\work\Godot-Spine\spine-runtimes\spine-godot\godot\methods.py", line 780:
batch_file = find_visual_c_batch_file(env)
File "C:\work\Godot-Spine\spine-runtimes\spine-godot\godot\methods.py", line 732:
return find_batch_file(env, version, host_platform, target_platform)[0]
File "C:\Users\travi\scoop\apps\python\current\Lib\site-packages\SCons\Tool\MSCommon\vc.py", line 929:
vernum = float(get_msvc_version_numeric(msvc_version))
File "C:\Users\travi\scoop\apps\python\current\Lib\site-packages\SCons\Tool\MSCommon\vc.py", line 504:
return ''.join([x for x in msvc_version if x in string_digits + '.'])
File "C:\Users\travi\scoop\apps\python\current\Lib\site-packages\SCons\Environment.py", line 586:
return self._dict[key]
This appears to be an issue finding MSVC bat file caused it would seam in the version code.
VC is installed and the build for the Exports works perfectly with it. Any clues where I could look to resolve this issue would be appreciated.