Building Godot from source(error in basisu_enc.h)(!SOLVED!)

CROmartinCROmartin Posts: 6Member
edited April 12 in Exporting

Greetings folks

For few days I have been trying build godot from source, but every time I try to build it there is some kind of error. I try to do fix it and I usually do by reading docs and other peoples opinion, also try stuff and learn from trial and error, but every time pops out something new(once it built but there were no bin file) and I had just enough of circling around, probably just doing such trivial mistake that I can't see myself. Help and advices would highly be appreciated

Here is the last mistake I had while building:

basisu_enc.h(689): error C3861: 'tolower': identifier not found

Notice: that is current error I have encountered many more that I have somehow fixed but as I said it always pops out new one. Once it even said that it built godot, but there were no bin file.

I have also installed python pack in VS, could that cause SCons malfunctions?

Setup: VS, SCons 3.0.5(tried multiple version because I saw people mentioning how new releases some time won't work), Python 3.8.2, pywin32, Godot 3.2( not newest version because I thought maybe newest version is unstable so that is why I can't build it)

I have tried: multiple versions of SCons, installing additional VS packages, different versions of Godot, reinstalling Python

Tried whole process again same results, now I have used SCons 3.1.1(which is actually required for this godot version):

**Solution: ** VS 2019 is missing required library in basisu_enc.h, I have located basisu_enc.h by win 10 search bar, opened by double clicking and added missing library by writing in it #include. As I have understood new versions of Godot will not require this library so to building older versions of Godot you will need include this library or download older version of VS that have that library by default.


Tags :

Best Answer

Answers

  • MegalomaniakMegalomaniak Posts: 2,654Admin

    First question that pops into my mind is what branch are you puling? I believe the trunk is version 4.0 which is in active development so it might just not be in a buildable state right now.

  • CROmartinCROmartin Posts: 6Member
    edited April 11

    @Megalomaniak said:
    First question that pops into my mind is what branch are you puling? I believe the trunk is version 4.0 which is in active development so it might just not be in a buildable state right now.

    Exactly what passed my mind, but then I have cloned ver 3.2 and still same problem happens. Today I tried redownloading VS, but that also didn't help, also pretty sure that I have picked all needed packages. I am starting to think that python could be a problem even though it is newest stable build, but it could still be problematic I guess.

  • MegalomaniakMegalomaniak Posts: 2,654Admin

    Hmm, well, looking at the screenshot in the OP it seems there's a third-party module that is failing to compile.

    The issue seems to be with an identifier on the line 689 in the file basisu_enc.h

  • MegalomaniakMegalomaniak Posts: 2,654Admin

    Whats the python version you have installed in VS?

  • CROmartinCROmartin Posts: 6Member

    @Megalomaniak said:
    Hmm, well, looking at the screenshot in the OP it seems there's a third-party module that is failing to compile.

    The issue seems to be with an identifier on the line 689 in the file basisu_enc.h

    A lot of stuff happening there is black box to me, I usually connect dots by reading docs and solutions of other people, but it seems that documentation is rather scares and not high quality. It would be great if you could recommend me some books related to such problems.

    @Megalomaniak said:
    Whats the python version you have installed in VS?

    I didn't install as package in VS studio, but I have download it directly so I can manage install directory and some additional options.
    Here are packages that VS is offering related to python(I am saying again that I didn't install them by VS):

  • MegalomaniakMegalomaniak Posts: 2,654Admin

    The identifier tolower should come from the C/C++ standard libraries afaik, so I'm not sure whats up with that.

    Python 3.7.5 should be fine as well, again, afaik.

    Best guess I can make is you might be missing a specific VS library perhaps?

  • CROmartinCROmartin Posts: 6Member

    @Megalomaniak said:
    The identifier tolower should come from the C/C++ standard libraries afaik, so I'm not sure whats up with that.

    Python 3.7.5 should be fine as well, again, afaik.

    Best guess I can make is you might be missing a specific VS library perhaps?

    I should mention once more again that I didn't install python true VS, I have download it directly and separately. If python not being installed true VS could be problem let me now, but afaik in docs it is pointed on direct download. This picture above is what I can download true VS.

  • MegalomaniakMegalomaniak Posts: 2,654Admin

    Yeah, I doubt it's that.

  • MegalomaniakMegalomaniak Posts: 2,654Admin
    Accepted Answer
  • MegalomaniakMegalomaniak Posts: 2,654Admin
    edited April 11

    Basically you are using a newer version of VS, thus experiencing this issue. Since the pull request I linked to has been merged, once godot engine updates to the newest basis_universal it should solve this.

    You should open an issue on the godot engine tracker.

  • CROmartinCROmartin Posts: 6Member

    @Megalomaniak said:
    Basically you are using a newer version of VS, thus experiencing this issue. Since the pull request I linked to has been merged, once godot engine updates to the newest basis_universal it should solve this.

    You should open an issue on the godot engine tracker.

    This is indeed a case, quite annoying obstacle to run into. There is always constant dancing between how much old and how much new version should be to everything goes fine.

    Already did open issue and they concluded same thing was problem.

    Thank you on help!

Leave a Comment

BoldItalicStrikethroughOrdered listUnordered list
Emoji
Image
Align leftAlign centerAlign rightToggle HTML viewToggle full pageToggle lights
Drop image/file