Skip to content
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

Docker build environment #108

Merged
merged 5 commits into from
Sep 7, 2023
Merged

Docker build environment #108

merged 5 commits into from
Sep 7, 2023

Conversation

IkerGalardi
Copy link
Contributor

@IkerGalardi IkerGalardi commented Sep 5, 2023

This PR implements a small ubuntu container that will be used to build the engine.

Ubuntu has been chosen as the base image as the Compressonator library is really thought to be built on that distribution. It is also important to note that the LTS version has been chosen as this will make it a more stable development environment.

The even though the compressonator library is built correctly, for some reason I am unable to disable compilation of some example application that uses OpenCV. As the container does not have any OpenCV version installed, the compilation fails. Still, this is not a problem as the libraries are correctly compiled.

DirectXShaderCompiler is directly installed from the release available in the official github page just by downloading the archive and installing the library and headers manually.

Status:

  • dxcompiler
  • assimp
  • fmod
  • FreeImageLib
  • freetype
  • Bullet
  • SDL2
  • Compressonator

For an overview of the linux port, refer to issue #66

The selected base image is ubuntu:22.04 as the compressonator library
only has build instructions/scripts for that distro.
@PanosK92
Copy link
Owner

PanosK92 commented Sep 6, 2023

Dockerfile looks good.

Since it's related to building and environment setup, would it make sense to move it into the build_scripts directory?

The current implementation has a small caveat. I have not been able to
disable building some demo or example that fails compilation due to the
library opencv not being present. Still, the libraries seem to be
correctly built.
The dependency is downloaded directly from the github releases using
wget and installed by copying the source files and libraries.
The dockerfile has been cleaned up by removing unnecessary directory
movements and adding a small cleanup command of all the intermediate
repository and archives.
@IkerGalardi IkerGalardi marked this pull request as ready for review September 7, 2023 08:29
@IkerGalardi
Copy link
Contributor Author

As commented in the linux porting issue fmod related things will be disabled just for now. Going to mark it ready for review and add fmod (or wwise if the dependency is changed) related stuff into the container later and focus on atleast get the editor/runtime linking and running.

@PanosK92 PanosK92 merged commit 47c462e into PanosK92:master Sep 7, 2023
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants