CesiumGS / cdb-to-3dtiles

Convert CDB to 3D Tiles
Apache License 2.0
76 stars 28 forks source link

Make Dockerfile and build instructions for Docker build container #13

Closed ErixenCruz closed 3 years ago

ErixenCruz commented 3 years ago

Requirements so far:

@lilleyse @baothientran If there is anything else let's put it down here

jtorresfabra commented 3 years ago

Sorry to chime in, but is there any reason to not use the last stable release of OSG? which should be OSG-3.6.5

baothientran commented 3 years ago

@jtorresfabra I can try it out with the latest version. Hopefully it should work

jtorresfabra commented 3 years ago

@baothientran thanks for the fast response, I've been tied to OSG development for more than a decade (even I'm its website admin :P), and I know OSG 3.6.x fixed a lot of bugs here and there.

baothientran commented 3 years ago

@jtorresfabra I'm so happy to know you are maintaining the OSG library. Do you know if there are any options in the cmake to let OSG compile only the plugin that we need? We currently use OpenFlight, Zip, Png, and Jpeg ReaderWriter; however, the current build system will build other plugins as well, which can be slow when building the library

Also do you know if it supports static linking? We are currently using dynamic linking for it. And which one do you recommend for the project? Thank you so much for your help

jtorresfabra commented 3 years ago

@baothientran well I'm not maintaining the library, I'm just its website administrator, the leader/maintainer is Robert Osfield. About plugins, as far as I remember it will only compile a plugin if it finds its dependencies. But if you want to explicitely enable/ disable plugins to be compiled you are interested in this line:

https://github.com/openscenegraph/OpenSceneGraph/blob/master/src/osgPlugins/CMakeLists.txt#L35

Finally afaik OSG supports static linking, just a note in case you are not already thinking on it: when static linking libraries the order matters, the library needing symbols should go first (Most dependent libraries goes first in your cmake link command).

baothientran commented 3 years ago

@jtorresfabra Thank you so much for your help. I will give it a try

ErixenCruz commented 3 years ago

@baothientran You ever get errors like this? /var/app/Core/src/BoundingRegion.cpp:6:7: error: extended initializer lists only available with -std=c++11 or -std=gnu++11 [-Werror] : _rectangle{rectangle} It suggests using c++11, but we require c++17 in the root cmakelists

baothientran commented 3 years ago

We discussed offline and it seems to be resolved

lilleyse commented 3 years ago

This issue can be closed since we have a working Dockerfile, but I opened https://github.com/CesiumGS/cdb-to-3dtiles/issues/30 to address some portability issues with the binaries.