| CCEngineServer | ||
| docs/CCEngineServer | ||
| .gitignore | ||
| CMakeLists.txt | ||
| CMakePresets.json | ||
| CMakeSettings.json | ||
| Dockerfile | ||
| README.md | ||
Building
Prepare build container
Build an image according to Dockerfile description:
podman build -t ccengineserver-builder .
Create the image, but do not start it yet:
podman create --security-opt label=disable -v /tmp/CCEngineServer:/home/conan/project --name=ccengineserver_builder -it localhost/ccengineserver-builder
Clone or copy the necessary source files into /tmp/CCEngineServer. As you can check this folder will be mapped into the container as /home/conan/project
Example:
cd /tmp/CCEngineServer
git clone git@git.sykora.xyz:/srv/git/CCEngineServer.git .
Attach the container:
podman start --attach -i ccengineserver_builder
Run build in the container:
cd ~
source .profile
cd project
sudo mkdir out
sudo chown conan:1001 out
cmake --preset="linux-gcc-release"
cmake --build --preset="linux-gcc-release"
strip --strip-all out/build/linux-gcc-release/CCEngineServer/bin/CCEngineServer
Note
If there is comilation issue about non existing std::aligned_alloc with the gcc version you are using, you can fix that with the below example:
sed -i 's/std::aligned_alloc/::aligned_alloc/' /home/conan/.conan/data/boost/1.77.0/_/_/package/cfef62e446e1bb07894de4523f2649afdfa94524/include/boost/asio/detail/memory.hpp
Copy the build results into below directory
mkdir ~/CCEngineServer-BuildResult
mkdir ~/CCEngineServer-BuildResult/data
mkdir ~/CCEngineServer-BuildResult/log
cp -r /tmp/CCEngineServer/out/build/linux-gcc-release/CCEngineServer/bin ~/CCEngineServer-BuildResult/