New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support MacOS #33
Support MacOS #33
Conversation
Running
results in
|
Thanks again for your work on this! In addition to
Unfortunately I don't know how the Once that is done, it should compile, unless there's hidden OS-specific code which only causes problems on Mac, not between Windows and Linux. |
3c29232
to
07d5a0b
Compare
With currrent PR I can build some code. But
gives
of which
puzzles me
|
I can now compile.
|
Following the steps above I see one warning
and 1 warning which should be a fat error
|
Running Godot
|
Very nice! Regarding the Windows builds and The whole Windows build pipeline was a result of a lot of trial and error, so it's possible that the script includes things that we ended up not actually needing. Regarding the second point, yeah, we could put all those GDAL includes into one file which we include everywhere else. That way we have all the ugly OS guards in one place. Is the call producing
I think the lines above were a pretty Windows-specific fix, and the Regarding your last comment: Does |
Just a guess: Could it be that it's expecting |
@kb173 Does compile without that line for me too! An important note however is that for me to work i need to build for release or i end up having lots of errors. Done via an extra CL-arg: |
So we should use the copied files? Moving the files did not help :-( |
Hmmm ... moving in the demo root makes running the scene crash :-)
|
Comparing Windows/Linux/Mac directory content only Linux has https://github.com/boku-ilen/geodot-plugin/blob/master/demo/addons/geodot/x11/libgdal.so So I guess we cannot build a game and deploy it on Windows or Mac unless that machine has GDAL installed themselves? |
We could try manual copy the library from |
Yeah, I just copied it manually for the Linux deployment as well (this is described to some extent in the Packaging steps in the README). We didn't push the DLLs for Windows, since we weren't sure which are needed and they're fairly huge altogether. We should probably revisit this, so I opened up an issue: #42 Are you still stuck on the |
I'm still stuck but are now rebuilding to double check steps taken. |
I tried various locations. Not I have a script to run Godot 3.2 beta5
I have no other clues |
Is the 'main scene crash' the same in all those variants? What exactly is the error message? I just realized that it's possible that one of them is actually mostly working, and the reason for the crash is that the paths aren't pointing to valid geodata. I'll try to find something simple to test with, one moment - |
Okay, please try downloading this small sample: http://www.geopackage.org/data/sample1_2.gpkg And open the |
|
Oh this is interesting! It seems like all the functions are found and called correctly! It's reporting sqlite3 issues because GeoPackages are essentially sqlite databases. Perhaps on Mac, there's another dependency for GDAL to have GeoPackage support? |
Note to self: find correct location
|
Actually it does seem to find the sqlite3 library. Are you sure the Path to the GeoPackage is correct in the demo scene? |
gives lots of dependencies ... guess we want a static build?! See #42?
|
File exists
|
FYI, I bundled a small sample geopackage with the GeopackageDemo now. You should now be able to just run that scene without downloading anything or changing any path. Let me know if that helps with your error (unlikely, but it's still one less thing which can go wrong). |
26ef2fe
to
02cce2d
Compare
Look like another codeflow crash
|
Looking for MacOS issues on https://github.com/OSGeo/gdal/issues related to SQLite |
|
Ah nice! It's interesting that you're getting a segfault though (signal 11), that's not something that should happen in GDAL either way... maybe this'll turn into a GDAL bug report, we'll see. Can you try running the new self-contained RasterDemo? That one works without SQL, so it'd be interesting to know whether that runs without issues - if so, we could really turn to GDAL about this (and maybe build a minimal reproduction project). |
The code is not touched for years there ... so not sure it's GDAL. It could be a data structure for SQLite. I did
to see some memory leaks. Anyways I was able to compile and got
Hope to test that tomorrow with godot :) |
Yeah, probably not... but still, even the possibility of a segfault coming from GDAL or SQLite is somewhat worrying. (Or it just seems that way and it's actually an issue on our side, which I suppose is more likely :D) Nice, looking forward to testing that! |
Code is not in mentioned location but in line 1163 |
GDAL locationTrying to cleanup the locations for GDAL as mentioned in #33 (comment) lead to the file mentioned in crash Similar for Remove filesJust in case some follow along
|
SQLiteI can just query our database.
gives
and
Rechecking (as I still duno what I'm doing) there are more SQLQuery ... between Lines 1163 - 1688 ... which required more GDAL knowlegde I don't have ... OTOH why would it run on linux / windows and not on Mac regarding SQLite! |
I give up :-( |
|
Are we missing features on homebrew/MacOS disabled |
Note to self:
|
Running
|
Above suggest it's OK but we can also add some probing within Godot later on
|
Trying to install using
seems futile as there is only one version somehow while
--HEAD
But still Aaargh
|
I will edit all comments later but mweh ... it's getting a mesh on my brew trying to reinstall stable gdal
|
02cce2d
to
8ca7016
Compare
8ca7016
to
6fe5f5b
Compare
Trying to compile on MacOS I still fail due to lack of C++ routine. Help welcome
Prepare
checkout PR
Install GDal using homebrew
brew install gdal
Get path of GDAL install
brew info gdal | grep '/usr/local' | cut -d ' ' -f 1
'normal' compile prepare steps
Build GDNative support
Build final code
osgeo_path
and eitherdebug
orrelease
scons target=debug osgeo_path=/usr/local/Cellar/gdal/3.2.1
scons target=release osgeo_path=/usr/local/Cellar/gdal/3.2.1
Check the result as addons must be filled
Run test scene
Assume you have shell access just type
Cleanup
To test rebuilding remove all files generated.