Hi all,
I'm trying to build guacenc as part of the Docker build of the guacd image
with the source for 1.5.0. Previously (prior to 1.5.0) this was achieved by
adding libavformat-dev as a build dependency in the Dockerfile. However, as
the image for 1.5.0 is based on Alpine Linux this package is not available
(although ffmpeg-libavformat is available in the edge repository). I have
tried other packages instead but can't seem to find anything that works.
For example, if I use ffmpeg-dev I get the following compilation werrors:
make[2]: Entering directory '/tmp/guacamole-server/src/guacenc'
> CC guacenc-buffer.o
> CC guacenc-cursor.o
> CC guacenc-display.o
> CC guacenc-display-buffers.o
> CC guacenc-display-image-streams.o
> CC guacenc-display-flatten.o
> CC guacenc-display-layers.o
> CC guacenc-display-sync.o
> CC guacenc-encode.o
> CC guacenc-ffmpeg-compat.o
> CC guacenc-guacenc.o
> CC guacenc-image-stream.o
> CC guacenc-instructions.o
> CC guacenc-instruction-blob.o
> CC guacenc-instruction-cfill.o
> CC guacenc-instruction-copy.o
> CC guacenc-instruction-cursor.o
> CC guacenc-instruction-dispose.o
> CC guacenc-instruction-end.o
> CC guacenc-instruction-img.o
> CC guacenc-instruction-mouse.o
> CC guacenc-instruction-move.o
> CC guacenc-instruction-rect.o
> CC guacenc-instruction-shade.o
> CC guacenc-instruction-size.o
> CC guacenc-instruction-sync.o
> CC guacenc-instruction-transfer.o
> CC guacenc-jpeg.o
> CC guacenc-layer.o
> CC guacenc-log.o
> CC guacenc-parse.o
CC guacenc-png.o
CC guacenc-video.o
> video.c: In function 'guacenc_video_alloc':
> video.c:63:22: error: assignment discards 'const' qualifier from pointer
> target type [-Werror=discarded-qualifiers]
> 63 | container_format = container_format_context->oformat;
> | ^
> video.c:66:22: error: initialization discards 'const' qualifier from
> pointer target type [-Werror=discarded-qualifiers]
> 66 | AVCodec* codec = avcodec_find_encoder_by_name(codec_name);
> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
> cc1: all warnings being treated as errors
> make[2]: *** [Makefile:1126: guacenc-video.o] Error 1
> make[2]: Leaving directory '/tmp/guacamole-server/src/guacenc'
> make[1]: *** [Makefile:544: all-recursive] Error 1
> make[1]: Leaving directory '/tmp/guacamole-server'
> make: *** [Makefile:464: all] Error 2
> The command '/bin/sh -c ${BUILD_DIR}/src/guacd-docker/bin/build-all.sh'
> returned a non-zero code: 2
>
Is building of guacenc within Docker still supported? If so, can someone
please advise me of what changes are required to the Dockerfile/
configure.ac/Makefile.am to achieve this?
Many thanks,
Andrew.