This guide will explain the intricacies on how to run Chronicler mod (or any other mod that depends on SQLite) on Linux.
The main difficulty of running it under Linux, stems from the fact that any SQLite project depends on the shared object, which has to be compiled per system and environment it is being run under.
There are currently two ways to run such mods under Linux:
- Using prepared Docker Image of Eco Server.
- Compiling needed dependencies on your own system.
IMPORTANT: If using Chronicler version 1.1 for Windows, first DELETE file SQLite.Interop.dll from /Mods/Chronicler.
This file is not compatible with Linux and is not required once the Linux dependency is present.
Using Docker Image
This is by far the easiest way to get SQLite dependent mods to run under Linux.
All you need is a docker image that has the dependencies already embedded within itself.
Such images can be found here: https://hub.docker.com/r/nidaren/eco-server
The information is provided in the documentation under the link.
Compiling the dependencies
Firstly, ensure you have root access to your system.
The next steps may differ from mod to mod, but in case of Chronicler, the steps are as follows:
- Download the following SQLite source code package: sqlite-netFx-full-source-126.96.36.199.zip
- Extract it to , for example sqlbuild folder.
- Change directory to sqlbuild/Setup
- Execute script compile-interop-assembly-release.sh
- File will be compiled to sqlbuild/bin/2013/Release/bin/
- Copy the file libSQLite.Interop.so (make sure file starts with lib not SQL) from sqlbuild/bin/2013/Release/bin/ to /usr/lib
- After that Chronicler will have all it needs to run on Linux.
- This dependency must be compiled per system.