Closed MCOfficer closed 2 years ago
That executing it died because it couldn't find the respective dlls is at least a good sign that it would run if it had them.
With us being open source and Qt being licensed under GPL3 as well, we could try to statically link it. However, creating a static Qt first appears to be a PITA. If it's as simple as bundling the executable with a few DLLs, i would much prefer that approach.
That executing it died because it couldn't find the respective dlls is at least a good sign that it would run if it had them.
With us being open source and Qt being licensed under GPL3 as well, we could try to statically link it. However, creating a static Qt first appears to be a PITA. If it's as simple as bundling the executable with a few DLLs, i would much prefer that approach.
For a CI build, the bare binary is all that should be output. This job isn't a deployment / release job.
That executing it died because it couldn't find the respective dlls is at least a good sign that it would run if it had them.
With us being open source and Qt being licensed under GPL3 as well, we could try to statically link it. However, creating a static Qt first appears to be a PITA. If it's as simple as bundling the executable with a few DLLs, i would much prefer that approach.
For a CI build, the bare binary is all that should be output. This job isn't a deployment / release job.
Well, it should be, eventually. I'm fine with postponing the problem, but we can think about it already.
Linux build also checks out (in that it died because my system has Qt 5.9.5 and is not ubuntu-latest
).
es-editor-ci $ ./endless-sky-editor
./endless-sky-editor: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.29' not found (required by ./endless-sky-editor)
./endless-sky-editor: /usr/lib/x86_64-linux-gnu/libQt5Core.so.5: version `Qt_5.15' not found (required by ./endless-sky-editor)
I did need to chmod +x
the extracted binary, but this is true for the other CI workflow artifacts too.
FYI, i totally forgot about this. Damn.
Linux build also checks out (in that it died because my system has Qt 5.9.5 and is not
ubuntu-latest
).es-editor-ci $ ./endless-sky-editor ./endless-sky-editor: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.29' not found (required by ./endless-sky-editor) ./endless-sky-editor: /usr/lib/x86_64-linux-gnu/libQt5Core.so.5: version `Qt_5.15' not found (required by ./endless-sky-editor)
Qt is fair enough, but is the libc version requirement a problem? I'm fairly sure we could change that by building against an older version, or potentially statically linking against musl.
I did need to
chmod +x
the extracted binary, but this is true for the other CI workflow artifacts too.
We can tar it if that's an issue.
Checked the windows binary and got loads of errors about missing Qt5 dlls. I guess that's a success.
The 18.04 build resolves the libc issue :+1:
es-editor_1804 $ ./endless-sky-editor -v
./endless-sky-editor: /usr/lib/x86_64-linux-gnu/libQt5Core.so.5: version `Qt_5.15' not found (required by ./endless-sky-editor)
Feature: This PR adds a CI pipeline via Github Actions
Feature Details
Testing Done
Pipeline: https://github.com/MCOfficer/endless-sky-editor/actions?query=branch%3Aactions
Artifacts:
Performance
Qt is cached between runs, so the pipeline averages ~90 seconds for any workflow run.