[Buildroot] [PATCH 1/3] package/libgphoto2: fix build with gcc >= 14
Dario Binacchi
dario.binacchi at amarulasolutions.com
Wed Oct 22 16:31:02 UTC 2025
The commit adds a backported upstream patch to fix the following build
failure:
ptp2/ptp-pack.c:3168:31: note: earlier argument should specify number of elements, later size of each element
ptp2/chdk.c: In function 'yuv_live_to_jpeg':
ptp2/chdk.c:1203:41: error: passing argument 3 of 'jpeg_mem_dest' from incompatible pointer type [-Wincompatible-pointer-types]
1203 | jpeg_mem_dest (&cinfo, &outbuf, &outlen);
| ^~~~~~~
| |
| uint64_t * {aka long long unsigned int *}
In file included from ptp2/chdk.c:31:
/home/autobuild/autobuild/instance-0/output-1/per-package/libgphoto2/host/armeb-buildroot-linux-gnueabi/sysroot/usr/include/jpeglib.h:989:43: note: expected 'long unsigned int *' but argument is of type 'uint64_t *' {aka 'long long unsigned int *'}
989 | unsigned long *outsize);
Fixes:
- https://autobuild.buildroot.org/results/db742e301a401c9f4bdf3c7e8cfde9f0ba1c4558
Signed-off-by: Dario Binacchi <dario.binacchi at amarulasolutions.com>
---
...gth-with-jpeg-jeaders.-fixes-https-g.patch | 39 +++++++++++++++++++
1 file changed, 39 insertions(+)
create mode 100644 package/libgphoto2/0001-align-outlen-length-with-jpeg-jeaders.-fixes-https-g.patch
diff --git a/package/libgphoto2/0001-align-outlen-length-with-jpeg-jeaders.-fixes-https-g.patch b/package/libgphoto2/0001-align-outlen-length-with-jpeg-jeaders.-fixes-https-g.patch
new file mode 100644
index 000000000000..910c9b125add
--- /dev/null
+++ b/package/libgphoto2/0001-align-outlen-length-with-jpeg-jeaders.-fixes-https-g.patch
@@ -0,0 +1,39 @@
+From 721f7f8c3ec8058d504607873e4c317aac0c99c5 Mon Sep 17 00:00:00 2001
+From: Marcus Meissner <marcus at jet.franken.de>
+Date: Mon, 4 Dec 2023 13:26:08 +0100
+Subject: [PATCH] align outlen length with jpeg jeaders. fixes
+ https://github.com/gphoto/libgphoto2/issues/941
+
+Signed-off-by: Dario Binacchi <dario.binacchi at amarulasolutions.com>
+Upstream: https://github.com/gphoto/libgphoto2/commit/721f7f8c3ec8058d504607873e4c317aac0c99c5
+---
+ camlibs/ptp2/chdk.c | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/camlibs/ptp2/chdk.c b/camlibs/ptp2/chdk.c
+index e1d898f37811..e775ea1d4bbb 100644
+--- a/camlibs/ptp2/chdk.c
++++ b/camlibs/ptp2/chdk.c
+@@ -1150,7 +1150,7 @@ static void yuv_live_to_jpeg(unsigned char *p_yuv,
+ struct jpeg_error_mgr jerr;
+ JSAMPROW row_ptr[1];
+ uint8_t *outbuf = NULL, *tmprowbuf = NULL;
+- uint64_t outlen = 0;
++ unsigned long outlen = 0;
+ unsigned int row_inc;
+ int sshift, dshift, xshift, skip;
+
+@@ -1161,8 +1161,8 @@ static void yuv_live_to_jpeg(unsigned char *p_yuv,
+ sshift = 6;
+ dshift = (width/height > 2) ? 6 : 12;
+ xshift = 4;
+- /* Digic 6 cameras: 8 bit per element UYVY,
+- * 4 bytes used to encode 2 pixels, need 6 bytes raw YUV data for jpeg encoding */
++ /* Digic 6 cameras: 8 bit per element UYVY,
++ * 4 bytes used to encode 2 pixels, need 6 bytes raw YUV data for jpeg encoding */
+ } else {
+ row_inc = buf_width*2;
+ sshift = 4;
+--
+2.43.0
+
--
2.43.0
More information about the buildroot
mailing list