$ cd /path/to/OpenHSP
$ cat > Dockerfile <<\EEOF
ARG BASE=debian:bookworm
FROM ${BASE} AS buildenv
RUN --mount=type=cache,target=/var/cache/apt,sharing=locked \
--mount=type=cache,target=/var/lib/apt,sharing=locked \
apt update && apt-get --no-install-recommends install -y \
build-essential \
g++ \
libcurl4-openssl-dev \
libegl1-mesa-dev \
libffi-dev \
libgles2-mesa-dev \
libglew-dev \
libgpiod-dev \
libgtk2.0-dev \
libsdl2-dev \
libsdl2-image-dev \
libsdl2-mixer-dev \
libsdl2-ttf-dev \
make \
;
FROM buildenv AS build
RUN mkdir /build
WORKDIR /src
RUN --mount=type=bind,target=.,rw=true \
make -j$(nproc) && \
cp -r hspcmp hsp3cl hsp3dish common/ /build
FROM scratch AS final
COPY --from=build --link /build /
EEOF
$ for BASE in "debian:bookworm" "debian:trixie" "ubuntu:noble" "ubuntu:plucky"; do docker build . -o build_v3.7_${BASE} --build-arg BASE=${BASE}; done
[+] Building 73.0s (11/11) FINISHED docker:default
=> [internal] load build definition from Dockerfile 0.1s
=> => transferring dockerfile: 784B 0.0s
=> [internal] load metadata for docker.io/library/debian:bookworm 1.5s
=> [internal] load .dockerignore 0.1s
=> => transferring context: 2B 0.0s
=> [buildenv 1/2] FROM docker.io/library/debian:bookworm@sha256:8a8cd02c5912770b4980228a54d4aff9e4f986f1eb2525d2d371dec5232cefcc 0.0s
=> [internal] load build context 5.6s
=> => transferring context: 288.69MB 4.4s
=> CACHED [buildenv 2/2] RUN --mount=type=cache,target=/var/cache/apt,sharing=locked --mount=type=cache,target=/var/lib/apt,sharing=locked apt update && apt-get --no-install-re 0.0s
=> CACHED [build 1/3] RUN mkdir /build 0.0s
=> CACHED [build 2/3] WORKDIR /src 0.0s
=> [build 3/3] RUN --mount=type=bind,target=.,rw=true make -j$(nproc) && cp -r hspcmp hsp3cl hsp3dish common/ /build 61.4s
=> CACHED [final 1/1] COPY --from=build --link /build / 0.0s
=> exporting to client directory 0.1s
=> => copying files 1.34MB 0.1s
[+] Building 19.9s (9/10) docker:default
=> [internal] load build definition from Dockerfile 0.1s
=> => transferring dockerfile: 784B 0.0s
=> [internal] load metadata for docker.io/library/debian:trixie 0.0s
=> [internal] load .dockerignore 0.5s
=> => transferring context: 2B 0.0s
=> [buildenv 1/2] FROM docker.io/library/debian:trixie 0.0s
=> [internal] load build context 4.1s
=> => transferring context: 290.03MB 3.5s
=> CACHED [buildenv 2/2] RUN --mount=type=cache,target=/var/cache/apt,sharing=locked --mount=type=cache,target=/var/lib/apt,sharing=locked apt update && apt-get --no-install-re 0.0s
=> CACHED [build 1/3] RUN mkdir /build 0.0s
=> CACHED [build 2/3] WORKDIR /src 0.0s
=> ERROR [build 3/3] RUN --mount=type=bind,target=.,rw=true make -j$(nproc) && cp -r hspcmp hsp3cl hsp3dish common/ /build 14.0s
------
> [build 3/3] RUN --mount=type=bind,target=.,rw=true make -j$(nproc) && cp -r hspcmp hsp3cl hsp3dish common/ /build:
1.827 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/dpmread.cpp -o src/hsp3/dpmread.do
1.828 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/filepack.cpp -o src/hsp3/filepack.do
1.828 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/hsp3crypt.cpp -o src/hsp3/hsp3crypt.do
1.828 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/hsp3utfcnv.cpp -o src/hsp3/hsp3utfcnv.do
2.020 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3dish/geometry.cpp -o src/hsp3dish/geometry.do
2.021 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/hsp3.cpp -o src/hsp3/hsp3.do
2.021 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/hsp3code.cpp -o src/hsp3/hsp3code.do
2.024 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/hsp3debug.cpp -o src/hsp3/hsp3debug.do
2.062 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3dish/hsp3gr_dish.cpp -o src/hsp3dish/hsp3gr_dish.do
2.085 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/hsp3int.cpp -o src/hsp3/hsp3int.do
2.266 src/hsp3/hsp3code.cpp: In function 'int cmdfunc_prog(int)':
2.266 src/hsp3/hsp3code.cpp:2246:47: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
2.266 2246 | HspVarCoreDupPtr( pval_m, p3, (void *)p1, p2 );
2.266 | ^~~~~~~~~~
2.268 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/hspvar_core.cpp -o src/hsp3/hspvar_core.do
2.326 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/hspvar_double.cpp -o src/hsp3/hspvar_double.do
2.448 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/hspvar_int.cpp -o src/hsp3/hspvar_int.do
2.509 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/hspvar_label.cpp -o src/hsp3/hspvar_label.do
2.512 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/hspvar_str.cpp -o src/hsp3/hspvar_str.do
2.515 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/hspvar_struct.cpp -o src/hsp3/hspvar_struct.do
2.550 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3dish/hspwnd_dish.cpp -o src/hsp3dish/hspwnd_dish.do
2.557 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3dish/hspwnd_obj.cpp -o src/hsp3dish/hspwnd_obj.do
2.560 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3dish/hspwnd_edit.cpp -o src/hsp3dish/hspwnd_edit.do
2.589 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3dish/random.cpp -o src/hsp3dish/random.do
2.656 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/stack.cpp -o src/hsp3/stack.do
2.715 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/strbuf.cpp -o src/hsp3/strbuf.do
2.762 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/strnote.cpp -o src/hsp3/strnote.do
2.793 src/hsp3dish/hspwnd_obj.cpp: In member function 'HSPOBJINFO* Bmscr::AddHSPObject(int, int)':
2.793 src/hsp3dish/hspwnd_obj.cpp:762:28: warning: converting to non-pointer type 'APTR' {aka 'int'} from NULL [-Wconversion-null]
2.793 762 | obj->varset.aptr = NULL;
2.793 | ^~~~
2.793 src/hsp3dish/hspwnd_obj.cpp: In member function 'void Bmscr::DeleteHSPObject(int)':
2.793 src/hsp3dish/hspwnd_obj.cpp:835:36: warning: converting to non-pointer type 'APTR' {aka 'int'} from NULL [-Wconversion-null]
2.793 835 | obj->varset.aptr = NULL;
2.793 | ^~~~
2.804 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/linux/hsp3ext_sock.cpp -o src/hsp3/linux/hsp3ext_sock.do
2.847 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/linux/hsp3ext_linux.cpp -o src/hsp3/linux/hsp3ext_linux.do
2.883 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/linux/devctrl_io.cpp -o src/hsp3/linux/devctrl_io.do
2.896 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/linux/hsp3extlib_ffi.cpp -o src/hsp3/linux/hsp3extlib_ffi.do
2.924 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3dish/essprite.cpp -o src/hsp3dish/essprite.do
3.042 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3dish/texmes.cpp -o src/hsp3dish/texmes.do
3.332 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3dish/sysreq.cpp -o src/hsp3dish/sysreq.do
3.335 src/hsp3/linux/devctrl_io.cpp: In function 'int gpiod_line(int)':
3.335 src/hsp3/linux/devctrl_io.cpp:495:17: error: 'gpiod_chip_get_line' was not declared in this scope; did you mean 'gpiod_chip_get_info'?
3.335 495 | gline = gpiod_chip_get_line(gchip, port);
3.335 | ^~~~~~~~~~~~~~~~~~~
3.335 | gpiod_chip_get_info
3.340 src/hsp3/linux/devctrl_io.cpp: In function 'int gpio_out(int, int)':
3.340 src/hsp3/linux/devctrl_io.cpp:507:21: error: 'gpiod_line_request_output' was not declared in this scope; did you mean 'gpiod_line_request_get_fd'?
3.340 507 | if (gpiod_line_request_output(gline, gpiod_appname, value) != 0) {
3.340 | ^~~~~~~~~~~~~~~~~~~~~~~~~
3.340 | gpiod_line_request_get_fd
3.345 src/hsp3/linux/devctrl_io.cpp:514:13: error: 'gpiod_line_set_value' was not declared in this scope; did you mean 'gpiod_line_value'?
3.345 514 | i = gpiod_line_set_value( gline, value );
3.345 | ^~~~~~~~~~~~~~~~~~~~
3.345 | gpiod_line_value
3.357 src/hsp3/linux/devctrl_io.cpp: In function 'int gpio_in(int, int*)':
3.357 src/hsp3/linux/devctrl_io.cpp:526:21: error: 'gpiod_line_request_input' was not declared in this scope; did you mean 'gpiod_line_request_get_fd'?
3.357 526 | if (gpiod_line_request_input(gline, gpiod_appname) != 0) {
3.357 | ^~~~~~~~~~~~~~~~~~~~~~~~
3.357 | gpiod_line_request_get_fd
3.362 src/hsp3/linux/devctrl_io.cpp:532:13: error: 'gpiod_line_get_value' was not declared in this scope; did you mean 'gpiod_line_value'?
3.362 532 | i = gpiod_line_get_value(gline);
3.362 | ^~~~~~~~~~~~~~~~~~~~
3.362 | gpiod_line_value
3.362 src/hsp3/linux/devctrl_io.cpp: In function 'int gpio_dir(int, int*)':
3.362 src/hsp3/linux/devctrl_io.cpp:543:13: error: invalid cast from type 'gpiod_line*' to type 'gpiod_line_direction'
3.362 543 | i = gpiod_line_direction(gline);
3.362 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~
3.368 src/hsp3/linux/devctrl_io.cpp: In function 'void gpio_init()':
3.368 src/hsp3/linux/devctrl_io.cpp:551:17: error: 'gpiod_chip_open_lookup' was not declared in this scope; did you mean 'gpiod_chip_open'?
3.368 551 | gchip = gpiod_chip_open_lookup("");
3.368 | ^~~~~~~~~~~~~~~~~~~~~~
3.368 | gpiod_chip_open
3.418 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3dish/emscripten/hgtex.cpp -o src/hsp3dish/emscripten/hgtex.do
3.434 make: *** [makefile:462: src/hsp3/linux/devctrl_io.do] Error 1
3.434 make: *** Waiting for unfinished jobs....
------
Dockerfile:25
--------------------
24 | WORKDIR /src
25 | >>> RUN --mount=type=bind,target=.,rw=true \
26 | >>> make -j$(nproc) && \
27 | >>> cp -r hspcmp hsp3cl hsp3dish common/ /build
28 |
--------------------
ERROR: failed to build: failed to solve: process "/bin/sh -c make -j$(nproc) && cp -r hspcmp hsp3cl hsp3dish common/ /build" did not complete successfully: exit code: 2
[+] Building 483.3s (11/11) FINISHED docker:default
=> [internal] load build definition from Dockerfile 0.3s
=> => transferring dockerfile: 784B 0.0s
=> [internal] load metadata for docker.io/library/ubuntu:noble 3.4s
=> [internal] load .dockerignore 0.2s
=> => transferring context: 2B 0.0s
=> [buildenv 1/2] FROM docker.io/library/ubuntu:noble@sha256:c4a8d5503dfb2a3eb8ab5f807da5bc69a85730fb49b5cfca2330194ebcc41c7b 5.1s
=> => resolve docker.io/library/ubuntu:noble@sha256:c4a8d5503dfb2a3eb8ab5f807da5bc69a85730fb49b5cfca2330194ebcc41c7b 0.5s
=> => sha256:c4a8d5503dfb2a3eb8ab5f807da5bc69a85730fb49b5cfca2330194ebcc41c7b 6.69kB / 6.69kB 0.0s
=> => sha256:cdb5fd928fced577cfecf12c8966e830fcdf42ee481fb0b91904eeddc2fe5eff 424B / 424B 0.0s
=> => sha256:0b1ebe5dd42682bb8eda97ecf10a09f70f18d2d4af35f82b9271badac5dbeb27 2.05kB / 2.05kB 0.0s
=> => sha256:b40150c1c2717d324cdb17278c8efdfa4dfcd2ffe083e976f0bcedf31115f081 29.73MB / 29.73MB 1.1s
=> => extracting sha256:b40150c1c2717d324cdb17278c8efdfa4dfcd2ffe083e976f0bcedf31115f081 1.3s
=> [internal] load build context 3.1s
=> => transferring context: 290.03MB 2.3s
=> [buildenv 2/2] RUN --mount=type=cache,target=/var/cache/apt,sharing=locked --mount=type=cache,target=/var/lib/apt,sharing=locked apt update && apt-get --no-install-recomme 414.8s
=> [build 1/3] RUN mkdir /build 2.5s
=> [build 2/3] WORKDIR /src 1.1s
=> [build 3/3] RUN --mount=type=bind,target=.,rw=true make -j$(nproc) && cp -r hspcmp hsp3cl hsp3dish common/ /build 52.3s
=> [final 1/1] COPY --from=build --link /build / 1.3s
=> exporting to client directory 0.0s
=> => copying files 1.40MB 0.0s
[+] Building 501.8s (9/10) docker:default
=> [internal] load build definition from Dockerfile 0.2s
=> => transferring dockerfile: 784B 0.0s
=> [internal] load metadata for docker.io/library/ubuntu:plucky 4.0s
=> [internal] load .dockerignore 5.5s
=> => transferring context: 2B 0.0s
=> [internal] load build context 3.5s
=> => transferring context: 291.42MB 2.6s
=> [buildenv 1/2] FROM docker.io/library/ubuntu:plucky@sha256:27771fb7b40a58237c98e8d3e6b9ecdd9289cec69a857fccfb85ff36294dac20 6.6s
=> => resolve docker.io/library/ubuntu:plucky@sha256:27771fb7b40a58237c98e8d3e6b9ecdd9289cec69a857fccfb85ff36294dac20 2.2s
=> => sha256:27771fb7b40a58237c98e8d3e6b9ecdd9289cec69a857fccfb85ff36294dac20 6.69kB / 6.69kB 0.0s
=> => sha256:ee67087740035e0e1d9b885725af4332b6382e8ebb6a8b583d51ec92699217cd 2.30kB / 2.30kB 0.0s
=> => sha256:34e8533bf27ac50f60bec267f6ce18c9aeb9556574e1ec1a8ce89926d32ea8f3 424B / 424B 0.0s
=> => sha256:c62190a9ab61c5fadad5c83c08965df006562241538b21f41b5efd457dc50ccf 29.71MB / 29.71MB 1.5s
=> => extracting sha256:c62190a9ab61c5fadad5c83c08965df006562241538b21f41b5efd457dc50ccf 1.3s
=> [buildenv 2/2] RUN --mount=type=cache,target=/var/cache/apt,sharing=locked --mount=type=cache,target=/var/lib/apt,sharing=locked apt update && apt-get --no-install-recomme 475.8s
=> [build 1/3] RUN mkdir /build 2.3s
=> [build 2/3] WORKDIR /src 1.1s
=> ERROR [build 3/3] RUN --mount=type=bind,target=.,rw=true make -j$(nproc) && cp -r hspcmp hsp3cl hsp3dish common/ /build 5.2s
------
> [build 3/3] RUN --mount=type=bind,target=.,rw=true make -j$(nproc) && cp -r hspcmp hsp3cl hsp3dish common/ /build:
1.920 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/dpmread.cpp -o src/hsp3/dpmread.do
1.921 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/filepack.cpp -o src/hsp3/filepack.do
1.921 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/hsp3crypt.cpp -o src/hsp3/hsp3crypt.do
1.921 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/hsp3utfcnv.cpp -o src/hsp3/hsp3utfcnv.do
1.960 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3dish/geometry.cpp -o src/hsp3dish/geometry.do
1.963 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/hsp3.cpp -o src/hsp3/hsp3.do
1.988 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/hsp3code.cpp -o src/hsp3/hsp3code.do
2.008 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/hsp3debug.cpp -o src/hsp3/hsp3debug.do
2.020 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3dish/hsp3gr_dish.cpp -o src/hsp3dish/hsp3gr_dish.do
2.043 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/hsp3int.cpp -o src/hsp3/hsp3int.do
2.216 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/hspvar_core.cpp -o src/hsp3/hspvar_core.do
2.273 src/hsp3/hsp3code.cpp: In function 'int cmdfunc_prog(int)':
2.273 src/hsp3/hsp3code.cpp:2246:47: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
2.273 2246 | HspVarCoreDupPtr( pval_m, p3, (void *)p1, p2 );
2.273 | ^~~~~~~~~~
2.289 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/hspvar_double.cpp -o src/hsp3/hspvar_double.do
2.389 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/hspvar_int.cpp -o src/hsp3/hspvar_int.do
2.437 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/hspvar_label.cpp -o src/hsp3/hspvar_label.do
2.449 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/hspvar_str.cpp -o src/hsp3/hspvar_str.do
2.475 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/hspvar_struct.cpp -o src/hsp3/hspvar_struct.do
2.484 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3dish/hspwnd_dish.cpp -o src/hsp3dish/hspwnd_dish.do
2.496 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3dish/hspwnd_obj.cpp -o src/hsp3dish/hspwnd_obj.do
2.514 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3dish/hspwnd_edit.cpp -o src/hsp3dish/hspwnd_edit.do
2.645 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3dish/random.cpp -o src/hsp3dish/random.do
2.713 src/hsp3dish/hspwnd_obj.cpp: In member function 'HSPOBJINFO* Bmscr::AddHSPObject(int, int)':
2.713 src/hsp3dish/hspwnd_obj.cpp:762:28: warning: converting to non-pointer type 'APTR' {aka 'int'} from NULL [-Wconversion-null]
2.713 762 | obj->varset.aptr = NULL;
2.713 | ^~~~
2.713 src/hsp3dish/hspwnd_obj.cpp: In member function 'void Bmscr::DeleteHSPObject(int)':
2.713 src/hsp3dish/hspwnd_obj.cpp:835:36: warning: converting to non-pointer type 'APTR' {aka 'int'} from NULL [-Wconversion-null]
2.713 835 | obj->varset.aptr = NULL;
2.713 | ^~~~
2.735 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/stack.cpp -o src/hsp3/stack.do
2.780 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/strbuf.cpp -o src/hsp3/strbuf.do
2.801 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/strnote.cpp -o src/hsp3/strnote.do
2.817 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/linux/hsp3ext_sock.cpp -o src/hsp3/linux/hsp3ext_sock.do
2.823 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/linux/hsp3ext_linux.cpp -o src/hsp3/linux/hsp3ext_linux.do
2.841 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/linux/devctrl_io.cpp -o src/hsp3/linux/devctrl_io.do
2.854 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/linux/hsp3extlib_ffi.cpp -o src/hsp3/linux/hsp3extlib_ffi.do
2.888 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3dish/essprite.cpp -o src/hsp3dish/essprite.do
2.992 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3dish/texmes.cpp -o src/hsp3dish/texmes.do
3.131 src/hsp3/linux/devctrl_io.cpp: In function 'int gpiod_line(int)':
3.131 src/hsp3/linux/devctrl_io.cpp:495:17: error: 'gpiod_chip_get_line' was not declared in this scope; did you mean 'gpiod_chip_get_info'?
3.131 495 | gline = gpiod_chip_et_line(gchip, port);
3.131 | ^~~~~~~~~~~~~~~~~~~
3.131 | gpiod_chip_get_info
3.136 src/hsp3/linux/devctrl_io.cpp: In function 'int gpio_out(int, int)':
3.136 src/hsp3/linux/devctrl_io.cpp:507:21: error: 'gpiod_line_request_output' was not declared in this scope; did you mean 'gpiod_line_request_get_fd'?
3.136 507 | if (gpiod_line_request_output(gline, gpiod_appname, value) != 0) {
3.136 | ^~~~~~~~~~~~~~~~~~~~~~~~~
3.136 | gpiod_line_request_get_fd
3.141 src/hsp3/linux/devctrl_io.cpp:514:13: error: 'gpiod_line_set_value' was not declared in this scope; did you mean 'gpiod_line_value'?
3.141 514 | i = gpiod_line_set_value( gline, value );
3.141 | ^~~~~~~~~~~~~~~~~~~~
3.141 | gpiod_line_value
3.146 src/hsp3/linux/devctrl_io.cpp: In function 'int gpio_in(int, int*)':
3.146 src/hsp3/linux/devctrl_io.cpp:526:21: error: 'gpiod_line_request_input' was not declared in this scope; did you mean 'gpiod_line_request_get_fd'?
3.146 526 | if (gpiod_line_request_input(gline, gpiod_appname) != 0) {
3.146 | ^~~~~~~~~~~~~~~~~~~~~~~~
3.146 | gpiod_line_request_get_fd
3.151 src/hsp3/linux/devctrl_io.cpp:532:13: error: 'gpiod_line_get_value' was not declared in this scope; did you mean 'gpiod_line_value'?
3.151 532 | i = gpiod_line_get_value(gline);
3.151 | ^~~~~~~~~~~~~~~~~~~~
3.151 | gpiod_line_value
3.151 src/hsp3/linux/devctrl_io.cpp: In function 'int gpio_dir(int, int*)':
3.151 src/hsp3/linux/devctrl_io.cpp:543:13: error: invalid cast from type 'gpiod_line*' to type 'gpiod_line_direction'
3.151 543 | i = gpiod_line_direction(gline);
3.151 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~
3.157 src/hsp3/linux/devctrl_io.cpp: In function 'void gpio_init()':
3.157 src/hsp3/linux/devctrl_io.cpp:551:17: error: 'gpiod_chip_open_lookup' was not declared in this scope; did you mean 'gpiod_chip_open'?
3.157 551 | gchip = gpiod_chip_open_lookup("");
3.157 | ^~~~~~~~~~~~~~~~~~~~~~
3.157 | gpiod_chip_open
3.226 make: *** [makefile:462: src/hsp3/linux/devctrl_io.do] Error 1
3.226 make: *** Waiting for unfinished jobs....
------
Dockerfile:25
--------------------
24 | WORKDIR /src
25 | >>> RUN --mount=type=bind,target=.,rw=true \
26 | >>> make -j$(nproc) && \
27 | >>> cp -r hspcmp hsp3cl hsp3dish common/ /build
28 |
--------------------
$ BASE="ubuntu:questing"; docker build . -o build_v3.7_${BASE} --build-arg BASE=${BASE}
[+] Building 522.0s (9/10) docker:default
=> [internal] load build definition from Dockerfile 0.2s
=> => transferring dockerfile: 784B 0.0s
=> [internal] load metadata for docker.io/library/ubuntu:questing 1.6s
=> [internal] load .dockerignore 0.1s
=> => transferring context: 2B 0.0s
=> CACHED [buildenv 1/2] FROM docker.io/library/ubuntu:questing@sha256:4a9232cc47bf99defcc8860ef6222c99773330367fcecbf21ba2edb0b810a31e 0.0s
=> [internal] load build context 4.3s
=> => transferring context: 291.42MB 2.8s
=> [buildenv 2/2] RUN --mount=type=cache,target=/var/cache/apt,sharing=locked --mount=type=cache,target=/var/lib/apt,sharing=locked apt update && apt-get --no- 508.7s
=> [build 1/3] RUN mkdir /build 2.5s
=> [build 2/3] WORKDIR /src 1.1s
=> ERROR [build 3/3] RUN --mount=type=bind,target=.,rw=true make -j$(nproc) && cp -r hspcmp hsp3cl hsp3dish common/ /build 6.7s
------
> [build 3/3] RUN --mount=type=bind,target=.,rw=true make -j$(nproc) && cp -r hspcmp hsp3cl hsp3dish common/ /build:
2.585 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/dpmread.cpp -o src/hsp3/dpmread.do
2.586 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/filepack.cpp -o src/hsp3/filepack.do
2.588 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/hsp3crypt.cpp -o src/hsp3/hsp3crypt.do
2.588 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/hsp3utfcnv.cpp -o src/hsp3/hsp3utfcnv.do
2.978 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3dish/geometry.cpp -o src/hsp3dish/geometry.do
2.992 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/hsp3.cpp -o src/hsp3/hsp3.do
2.992 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/hsp3code.cpp -o src/hsp3/hsp3code.do
3.025 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/hsp3debug.cpp -o src/hsp3/hsp3debug.do
3.033 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3dish/hsp3gr_dish.cpp -o src/hsp3dish/hsp3gr_dish.do
3.074 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/hsp3int.cpp -o src/hsp3/hsp3int.do
3.211 src/hsp3/hsp3code.cpp: In function 'int cmdfunc_prog(int)':
3.211 src/hsp3/hsp3code.cpp:2246:47: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
3.211 2246 | HspVarCoreDupPtr( pval_m, p3, (void *)p1, p2 );
3.211 | ^~~~~~~~~~
3.243 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/hspvar_core.cpp -o src/hsp3/hspvar_core.do
3.303 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/hspvar_double.cpp -o src/hsp3/hspvar_double.do
3.427 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/hspvar_int.cpp -o src/hsp3/hspvar_int.do
3.495 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/hspvar_label.cpp -o src/hsp3/hspvar_label.do
3.509 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/hspvar_str.cpp -o src/hsp3/hspvar_str.do
3.562 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/hspvar_struct.cpp -o src/hsp3/hspvar_struct.do
3.572 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3dish/hspwnd_dish.cpp -o src/hsp3dish/hspwnd_dish.do
3.575 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3dish/hspwnd_obj.cpp -o src/hsp3dish/hspwnd_obj.do
3.591 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3dish/hspwnd_edit.cpp -o src/hsp3dish/hspwnd_edit.do
3.605 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3dish/random.cpp -o src/hsp3dish/random.do
3.682 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/stack.cpp -o src/hsp3/stack.do
3.762 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/strbuf.cpp -o src/hsp3/strbuf.do
3.848 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/strnote.cpp -o src/hsp3/strnote.do
3.896 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/linux/hsp3ext_sock.cpp -o src/hsp3/linux/hsp3ext_sock.do
3.935 src/hsp3dish/hspwnd_obj.cpp: In member function 'HSPOBJINFO* Bmscr::AddHSPObject(int, int)':
3.935 src/hsp3dish/hspwnd_obj.cpp:762:28: warning: converting to non-pointer type 'APTR' {aka 'int'} from NULL [-Wconversion-null]
3.935 762 | obj->varset.aptr = NULL;
3.935 | ^~~~
3.935 src/hsp3dish/hspwnd_obj.cpp: In member function 'void Bmscr::DeleteHSPObject(int)':
3.935 src/hsp3dish/hspwnd_obj.cpp:835:36: warning: converting to non-pointer type 'APTR' {aka 'int'} from NULL [-Wconversion-null]
3.935 835 | obj->varset.aptr = NULL;
3.935 | ^~~~
4.048 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/linux/hsp3ext_linux.cpp -o src/hsp3/linux/hsp3ext_linux.do
4.064 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/linux/devctrl_io.cpp -o src/hsp3/linux/devctrl_io.do
4.072 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3/linux/hsp3extlib_ffi.cpp -o src/hsp3/linux/hsp3extlib_ffi.do
4.089 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3dish/essprite.cpp -o src/hsp3dish/essprite.do
4.206 g++ -Wno-write-strings --exec-charset=UTF-8 -DHSPDISH -DHSPLINUX -DHSPDEBUG -DUSE_OBAQ -DHSP_COM_UNSUPPORTED -DHSP64 -c src/hsp3dish/texmes.cpp -o src/hsp3dish/texmes.do
4.401 src/hsp3/linux/devctrl_io.cpp: In function 'int gpiod_line(int)':
4.401 src/hsp3/linux/devctrl_io.cpp:495:17: error: 'gpiod_chip_get_line' was not declared in this scope; did you mean 'gpiod_chip_get_info'?
4.401 495 | gline = gpiod_chip_get_line(gchip, port);
4.401 | ^~~~~~~~~~~~~~~~~~~
4.401 | gpiod_chip_get_info
4.419 src/hsp3/linux/devctrl_io.cpp: In function 'int gpio_out(int, int)':
4.419 src/hsp3/linux/devctrl_io.cpp:507:21: error: 'gpiod_line_request_output' was not declared in this scope; did you mean 'gpiod_line_request_get_fd'?
4.419 507 | if (gpiod_line_request_output(gline, gpiod_appname, value) != 0) {
4.419 | ^~~~~~~~~~~~~~~~~~~~~~~~~
4.419 | gpiod_line_request_get_fd
4.423 src/hsp3/linux/devctrl_io.cpp:514:13: error: 'gpiod_line_set_value' was not declared in this scope; did you mean 'gpiod_line_value'?
4.423 514 | i = gpiod_line_set_value( gline, value );
4.423 | ^~~~~~~~~~~~~~~~~~~~
4.423 | gpiod_line_value
4.429 src/hsp3/linux/devctrl_io.cpp: In function 'int gpio_in(int, int*)':
4.429 src/hsp3/linux/devctrl_io.cpp:526:21: error: 'gpiod_line_request_input' was not declared in this scope; did you mean 'gpiod_line_request_get_fd'?
4.429 526 | if (gpiod_line_request_input(gline, gpiod_appname) != 0) {
4.429 | ^~~~~~~~~~~~~~~~~~~~~~~~
4.429 | gpiod_line_request_get_fd
4.434 src/hsp3/linux/devctrl_io.cpp:532:13: error: 'gpiod_line_get_value' was not declared in this scope; did you mean 'gpiod_line_value'?
4.434 532 | i = gpiod_line_get_value(gline);
4.434 | ^~~~~~~~~~~~~~~~~~~~
4.434 | gpiod_line_value
4.434 src/hsp3/linux/devctrl_io.cpp: In function 'int gpio_dir(int, int*)':
4.434 src/hsp3/linux/devctrl_io.cpp:543:13: error: invalid cast from type 'gpiod_line*' to type 'gpiod_line_direction'
4.434 543 | i = gpiod_line_direction(gline);
4.434 | ^~~~~~~~~~~~~~~~~~~~~~~~~~~
4.440 src/hsp3/linux/devctrl_io.cpp: In function 'void gpio_init()':
4.440 src/hsp3/linux/devctrl_io.cpp:551:17: error: 'gpiod_chip_open_lookup' was not declared in this scope; did you mean 'gpiod_chip_open'?
4.440 551 | gchip = gpiod_chip_open_lookup("");
4.440 | ^~~~~~~~~~~~~~~~~~~~~~
4.440 | gpiod_chip_open
4.514 make: *** [makefile:462: src/hsp3/linux/devctrl_io.do] Error 1
4.514 make: *** Waiting for unfinished jobs....
------
Dockerfile:25
--------------------
24 | WORKDIR /src
25 | >>> RUN --mount=type=bind,target=.,rw=true \
26 | >>> make -j$(nproc) && \
27 | >>> cp -r hspcmp hsp3cl hsp3dish common/ /build
28 |
--------------------
ERROR: failed to build: failed to solve: process "/bin/sh -c make -j$(nproc) && cp -r hspcmp hsp3cl hsp3dish common/ /build" did not complete successfully: exit code: 2
2026 年 4 月時点での安定版である Debian (同様に Raspberry Pi OS も) Trixie (13) や Ubuntu の最新安定版 Questing (25.10) にて OpenHSP v3.7 (456fd2c) のコンパイルに失敗します.libgpiod は v2.0 から
である
gpiod_chip_open_lookupなどを削除しました.結果,これらのシステム上でmakeするとコンパイルエラーとなります:対応案
ライブラリの更新に追従してコードベースを書き直すのがまず考えられます.
devctrl_io.cppの範囲では,以下の関数が削除されたようです.単に名前が変わっただけでなく,呼び出しの論理にも変更が必要そうです.
または,古いバージョンの libgpiod を必要要件としてドキュメントで明示するのも対応の一つと思います.ただし,prebuilt は公式で提供されていないようなので,ユーザーにビルドしてもらう必要があります.
{,pi}setup.shでスタンドアロンでインストールできるようにする場合,これらのスクリプトにソースのダウンロードとコンパイルの手順も書けると思います.Minimal Reproduction
Reproduction procedure