|
|
commit c1a7c4af042a593b4b3a1df3e750b0cc80362486
Author: Albrecht Schlosser <albrechts.fltk@online.de>
AuthorDate: Fri Nov 25 17:24:18 2022 +0100
Commit: Albrecht Schlosser <albrechts.fltk@online.de>
CommitDate: Fri Nov 25 17:24:18 2022 +0100
Fix GitHub Actions (CI) for Windows builds
This was necessary because the latest GitHub "runner" image (20221120.1)
includes incompatible image libs (libjpeg, libpng, and zlib). This
caused `fluid-cmd.exe` to fail with error code -1073741511. For further
information please refer to this GitHub Issue:
https://github.com/actions/runner-images/issues/6627
The previous runner version (20221027.1) did not include these libs
and our build used the internal libs and worked.
The fix is to disable the search for system libs in CMake.
Note: this does not explain *why* these libs are incompatible.
.github/workflows/build.yml | 26 ++++++++++----------------
1 file changed, 10 insertions(+), 16 deletions(-)
diff --git .github/workflows/build.yml .github/workflows/build.yml
index 0083bf8..763d46f 100644
--- .github/workflows/build.yml
+++ .github/workflows/build.yml
@@ -103,32 +103,26 @@ jobs:
run: cmake --build . --config $BUILD_TYPE
build-windows:
- # The CMake configure and build commands are platform agnostic and should work equally
- # well on Windows or Mac. You can convert this to a matrix build if you need
- # cross-platform coverage.
- # See: https://docs.github.com/en/free-pro-team@latest/actions/learn-github-actions/managing-complex-workflows#using-a-build-matrix
+ # This build config has been minimized. Please see other configs for further advice.
+ # We don't use the "bash" shell (defaults to PowerShell) and avoid using environment
+ # variables as far as possible and useful.
+ #
+ # Note:
+ # We *must* disable system image libs to make sure we don't find incompatible ones on
+ # GitHub Actions runners "windows-latest" (since Nov. 22, 2022, version: 20221120.1).
+
runs-on: windows-latest
steps:
- uses: actions/checkout@v2
- name: Create Build Environment
- # Some projects don't allow in-source building, so create a separate build directory
- # We'll use this as our working directory for all subsequent commands
run: cmake -E make_directory ${{github.workspace}}/build
- name: Configure CMake
- # Use a bash shell so we can use the same syntax for environment variable
- # access regardless of the host operating system
- shell: bash
working-directory: ${{github.workspace}}/build
- # Note the current convention is to use the -S and -B options here to specify source
- # and build directories, but this is only available with CMake 3.13 and higher.
- # The CMake binaries on the Github Actions machines are (as of this writing) 3.12
- run: cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=$BUILD_TYPE
+ run: cmake -D OPTION_USE_SYSTEM_LIBJPEG:BOOL=OFF -D OPTION_USE_SYSTEM_LIBPNG:BOOL=OFF -D OPTION_USE_SYSTEM_ZLIB:BOOL=OFF ..
- name: Build
working-directory: ${{github.workspace}}/build
- shell: bash
- # Execute the build. You can specify a specific target with "--target <NAME>"
- run: cmake --build . --config $BUILD_TYPE
+ run: cmake --build . --config Release
[ Direct Link to Message ] | |
|
| |