Use a toolschain made for debian Bullseye (or equivalent).
Using the Stretch toolschain, kiwix-serve launch but crash with a SIGSEGV
at first request.
(I suspect a "conflict" between thread and exception handling as
a test program with exception only works).
Moving the a toolschain targeting Bullseye fixes the issues
(both on qemu and real raspberry-pi v3 B).
Note that the toolschain is given to compile for Pi 2 and 3 only.
I've also tested with toolschain for Pi 3A+, 3B+, 4 and generated binary
also works.
Not tested of Pi Zero.
Fix#613
The version of libzim (and other project too) is used to know what we
need to package in the published archive (nightly and releasee).
So the version must correspond to what is build.
For nightlies, we build the `main` branch and the main branch of libzim
is still on 8.1.0 so we must have the same version.
Fixopenzim/libzim#772
As this is just a ABI fix and we recompile everything when we do
a release of our projects, we don't need to recompile our projects.
Building with libzim 8.1.0 was enough, no need to trigger a update in all
the users of prebuild binary.
The `INSTALL_DIR` was added twice. It was not a issue as we then transform
the list into a set to remove duplicated.
But with `filter_install_dir` call only on one "add", the (textual)
entries are not duplicated and so, not removed. So the files where add
twice.
Now we correctly filter initial `INSTALL_DIR` and we remove the second add.
Version 5.2.7 include this commit
https://git.tukaani.org/?p=xz.git;a=commit;h=31d80c6b261b24220776dfaeb8a04f80f80e0a24
With this change, compiling libzim mixed (libzim dynamic and dependencies,
so lzma, statically) fails at libzim linking with a
`src/libzim.so.8.0.1: version node not found for symbol lzma_get_progress@XZ_5.2.2`
error message.
This can be "workaround" by passing `--disable-symbol-versions` to
configure script but then, it is the compilation of kiwix-desktop in
native_dyn which falling with
```
/usr/bin/ld: /usr/lib64/libsystemd.so.0: undefined reference to `lzma_code@XZ_5.0'
/usr/bin/ld: /usr/lib64/libsystemd.so.0: undefined reference to `lzma_end@XZ_5.0'
/usr/bin/ld: /usr/lib64/libsystemd.so.0: undefined reference to `lzma_stream_decoder@XZ_5.0'
/usr/bin/ld: /usr/lib64/libxml2.so.2: undefined reference to `lzma_auto_decoder@XZ_5.0'
/usr/bin/ld: /usr/lib64/libxml2.so.2: undefined reference to `lzma_properties_decode@XZ_5.0'
```
Probably because some native dependencies (Qt ?) use versionned symbols.
This have to be fixed somehow but until then, let's go back to 5.2.6