godotengine / godotengine/godot-cpp

[GDExtension] Cant cross-compile from linux to windows

Open
#605 0 comments 0 reactions 0 assignees View on GitHub
bug topic:gdextension
Dominant language
C++
Stars
2.7k
Forks
809
Avg merge
1d 3h
Merged PRs (30d)
8

Description

![Screenshot_2021-08-31_18-52-40](https://user-images.githubusercontent.com/58845030/131578706-b6be0a46-28e6-4d18-97fe-3964619af1ba.png)

As you can see in the image above, from **lines 6-15** I've commented them, for some reason, the `try to identify platform` doesnt pass in the **lines 101-117**:

```py
elif env["platform"] == "windows":
print("XWin for linux")
env["target_path"] += "win64/"
cpp_library += ".windows"
# This makes sure to keep the session environment variables on windows,
# that way you can run scons in a vs 2017 prompt and it will find all the required tools
env.Append(ENV=os.environ)

env.Append(CPPDEFINES=["WIN32", "_WIN32", "_WINDOWS", "_CRT_SECURE_NO_WARNINGS"])
env.Append(CCFLAGS=["-W3", "-GR"])
if env["target"] in ("debug", "d"):
env.Append(CPPDEFINES=["_DEBUG"])
env.Append(CCFLAGS=["-EHsc", "-MDd", "-ZI"])
env.Append(LINKFLAGS=["-DEBUG"])
else:
env.Append(CPPDEFINES=["NDEBUG"])
env.Append(CCFLAGS=["-O2", "-EHsc", "-MD"])
```

this isnt read even if you pass: `platform=windows` because of **lines 6-15** if you comment them and give an empty value to `host_platform` it works. But still cant compile to windows!

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.