Seems HiGHs latest/v1.14.0 do not compile on alpine:edge anymore...
Trace
/usr/include/fortify/stdio.h: In function '__to_xstring.constprop':
#11 65.07 /usr/include/fortify/stdio.h:82:28: error: inlining failed in call to 'always_inline' 'vsnprintf': function body can be overwritten at link time
#11 65.07 82 | _FORTIFY_FN(vsnprintf) int vsnprintf(char * _FORTIFY_POS0 __s, size_t __n,
#11 65.07 | ^
#11 65.07 /usr/include/c++/15.2.0/ext/string_conversions.h:115:32: note: called from here
#11 65.07 115 | const int __len = __convf(__s, __n, __fmt, __args);
#11 65.07 | ^
#11 65.81 make[3]: *** [/tmp/ccgdIgcD.mk:88: /tmp/ccNhkfJa.ltrans43.ltrans.o] Error 1
#11 65.81 make[3]: *** Waiting for unfinished jobs....
#11 68.49 lto-wrapper: fatal error: make returned 2 exit status
#11 68.49 compilation terminated.
#11 68.50 /usr/lib/gcc/x86_64-alpine-linux-musl/15.2.0/../../../../x86_64-alpine-linux-musl/bin/ld: error: lto-wrapper failed
#11 68.51 collect2: error: ld returned 1 exit status
#11 68.51
#11 68.51 gmake[2]: *** [highs/CMakeFiles/highs.dir/build.make:2981: lib/libhighs.so.1.14.0] Error 1
#11 68.51 gmake[2]: Leaving directory '/home/project/build'
#11 68.51 gmake[1]: *** [CMakeFiles/Makefile2:1102: highs/CMakeFiles/highs.dir/all] Error 2
#11 68.51 gmake[1]: Leaving directory '/home/project/build'
#11 68.51 gmake: *** [Makefile:166: all] Error 2
#11 68.51
#11 ERROR: process "/bin/sh -c cmake --build build --target all -v" did not complete successfully: exit code: 2
Protocol
A simply way to reproduce it is to use this Dockerfile (placed in the root dir of a fresh git clone).
./Dockerfile:
# Create a virtual environment with all tools installed
# ref: https://hub.docker.com/_/alpine
FROM alpine:edge AS base
# Install system build dependencies
ENV PATH=/usr/local/bin:$PATH
RUN apk add --no-cache git build-base linux-headers cmake
CMD [ "/bin/sh" ]
FROM base AS env
RUN cmake -version
FROM env AS devel
WORKDIR /home/project
COPY . .
ARG CMAKE_BUILD_PARALLEL_LEVEL
ENV CMAKE_BUILD_PARALLEL_LEVEL=${CMAKE_BUILD_PARALLEL_LEVEL:-4}
FROM devel AS build
RUN cmake -S. -Bbuild
RUN cmake --build build --target all -v
RUN cmake --build build --target install
FROM build AS test
RUN CTEST_OUTPUT_ON_FAILURE=1 cmake --build build --target test
then use the following cmds:
# verify my HiGHS clone
$ git rev-parse --abbrev-ref HEAD
latest
$ docker build --target build --progress=plain .
Observed
compilation failed
Expected
compilation pass
Dev Note
FYI, testing using v1.13.1 compilation pass, so it seems to be a newly regression...
$ git checkout v1.13.1
$ docker build --target build --progress=plain .
...
#12 1.002 -- Set non-toolchain portion of runtime path of "/usr/local/lib/libhighs.so.1.13.1" to "$ORIGIN"
#12 1.003 -- Installing: /usr/local/lib/libhighs.so
#12 1.003 -- Installing: /usr/local/lib/cmake/highs/highs-targets.cmake
#12 1.003 -- Installing: /usr/local/lib/cmake/highs/highs-targets-release.cmake
#12 1.004 -- Installing: /usr/local/lib/cmake/highs/highs-config.cmake
#12 1.004 -- Installing: /usr/local/lib/cmake/highs/highs-config-version.cmake
#12 1.005 -- Installing: /usr/local/lib/pkgconfig/highs.pc
#12 1.006 -- Installing: /usr/local/bin/highs
#12 1.011 -- Set non-toolchain portion of runtime path of "/usr/local/bin/highs" to "$ORIGIN:$ORIGIN/../lib"
#12 DONE 1.0s
Misc
note: spotted in or-tools when integrating HiGHS v1.14.0
see: https://github.com/google/or-tools/actions/runs/24277768054/job/70894528629#step:6:6248
Seems HiGHs
latest/v1.14.0do not compile onalpine:edgeanymore...Trace
Protocol
A simply way to reproduce it is to use this Dockerfile (placed in the root dir of a fresh git clone).
./Dockerfile:then use the following cmds:
Observed
compilation failed
Expected
compilation pass
Dev Note
FYI, testing using
v1.13.1compilation pass, so it seems to be a newly regression...Misc
note: spotted in or-tools when integrating HiGHS v1.14.0
see: https://github.com/google/or-tools/actions/runs/24277768054/job/70894528629#step:6:6248