public inbox for buildroot@busybox.net
 help / color / mirror / Atom feed
From: Thomas Perale via buildroot <buildroot@buildroot.org>
To: Bernd Kuhls <bernd@kuhls.net>
Cc: Thomas Perale <thomas.perale@mind.be>, buildroot@buildroot.org
Subject: Re: [Buildroot] [PATCH 1/1] package/libheif: needs gcc >= 10
Date: Sat, 14 Mar 2026 08:54:14 +0100	[thread overview]
Message-ID: <20260314075414.15484-1-thomas.perale@mind.be> (raw)
In-Reply-To: <20260307185425.729667-1-bernd@kuhls.net>

In reply of:
> Fixes build error with gcc 9.x:
> 
> output/build/libheif-1.21.1/libheif/nclx.h:128:50: error:
>  'bool nclx_profile::operator==(const nclx_profile&)
>  const' cannot be defaulted
> 
>  using this defconfig:
> 
>   BR2_arm=y
>   BR2_TOOLCHAIN_EXTERNAL=y
>   BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y
>   BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y
>   BR2_TOOLCHAIN_EXTERNAL_URL="http://autobuild.buildroot.org/toolchains/tarballs/br-arm-full-static-2020.11.2.tar.bz2"
>   BR2_TOOLCHAIN_EXTERNAL_GCC_9=y
>   BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_4=y
>   BR2_TOOLCHAIN_EXTERNAL_LOCALE=y
>   # BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS_DEBUG is not set
>   BR2_TOOLCHAIN_EXTERNAL_CXX=y
>   BR2_STATIC_LIBS=y
>   BR2_PACKAGE_LIBHEIF=y
> 
> According to https://github.com/strukturag/libheif/issues/1615#issuecomment-3457979167
> gcc >= 10 with support for C++20 is needed for the package.
> 
> The failing code was introduced upstream in version 0.21.0 with commit
> https://github.com/strukturag/libheif/commit/a62f933e380e165dc2c12a879d0ceed1529b3efa
> which was added to buildroot with commit
> a8aed698c706ec534ddc41cdce651c18016c28ca.
> 
> Also removed -std=c++11 from CXXFLAGS.
> 
> The build error was not yet recorded by the autobuilders.
> 
> Signed-off-by: Bernd Kuhls <bernd@kuhls.net>

Applied to 2026.02.x. Thanks

> ---
>  package/kodi-imagedecoder-heif/Config.in | 6 +++---
>  package/libheif/Config.in                | 6 +++---
>  package/libheif/libheif.mk               | 1 -
>  3 files changed, 6 insertions(+), 7 deletions(-)
> 
> diff --git a/package/kodi-imagedecoder-heif/Config.in b/package/kodi-imagedecoder-heif/Config.in
> index f41b164ff4..d77f10ee98 100644
> --- a/package/kodi-imagedecoder-heif/Config.in
> +++ b/package/kodi-imagedecoder-heif/Config.in
> @@ -3,7 +3,7 @@ config BR2_PACKAGE_KODI_IMAGEDECODER_HEIF
>  	depends on BR2_INSTALL_LIBSTDCPP # libde265, libheif, tinyxml2
>  	depends on BR2_TOOLCHAIN_HAS_THREADS # libde265, libheif
>  	depends on !BR2_TOOLCHAIN_HAS_BINUTILS_BUG_30730 # libheif
> -	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # libheif
> +	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_10 # libheif
>  	select BR2_PACKAGE_LIBDE265
>  	select BR2_PACKAGE_LIBHEIF
>  	select BR2_PACKAGE_TINYXML2
> @@ -12,7 +12,7 @@ config BR2_PACKAGE_KODI_IMAGEDECODER_HEIF
>  
>  	  https://github.com/xbmc/imagedecoder.heif
>  
> -comment "kodi-imagedecoder-heif needs a toolchain w/ C++, threads, gcc >= 4.8"
> +comment "kodi-imagedecoder-heif needs a toolchain w/ C++, threads, gcc >= 10"
>  	depends on !BR2_TOOLCHAIN_HAS_BINUTILS_BUG_30730 # libheif
>  	depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || \
> -		!BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
> +		!BR2_TOOLCHAIN_GCC_AT_LEAST_10
> diff --git a/package/libheif/Config.in b/package/libheif/Config.in
> index 0ae86a07f4..9e88fb826d 100644
> --- a/package/libheif/Config.in
> +++ b/package/libheif/Config.in
> @@ -2,14 +2,14 @@ config BR2_PACKAGE_LIBHEIF
>  	bool "libheif"
>  	depends on !BR2_TOOLCHAIN_HAS_BINUTILS_BUG_30730
>  	depends on BR2_INSTALL_LIBSTDCPP
> -	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # C++11
> +	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_10 # C++20
>  	depends on BR2_TOOLCHAIN_HAS_THREADS
>  	help
>  	  libheif is an HEIF and AVIF file format decoder and encoder.
>  
>  	  https://github.com/strukturag/libheif
>  
> -comment "libheif needs a toolchain w/ C++, threads, gcc >= 4.8"
> +comment "libheif needs a toolchain w/ C++, threads, gcc >= 10"
>  	depends on !BR2_TOOLCHAIN_HAS_BINUTILS_BUG_30730
> -	depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 || \
> +	depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_GCC_AT_LEAST_10 || \
>  		!BR2_TOOLCHAIN_HAS_THREADS
> diff --git a/package/libheif/libheif.mk b/package/libheif/libheif.mk
> index acd302d847..c4196f9353 100644
> --- a/package/libheif/libheif.mk
> +++ b/package/libheif/libheif.mk
> @@ -11,7 +11,6 @@ LIBHEIF_LICENSE_FILES = COPYING
>  LIBHEIF_CPE_ID_VENDOR = struktur
>  LIBHEIF_INSTALL_STAGING = YES
>  LIBHEIF_CONF_OPTS = \
> -	-DCMAKE_CXX_FLAGS="-std=c++11" \
>  	-DENABLE_PLUGIN_LOADING=OFF \
>  	-DWITH_AOM_DECODER=OFF \
>  	-DWITH_AOM_ENCODER=OFF \
> -- 
> 2.47.3
> 
> _______________________________________________
> buildroot mailing list
> buildroot@buildroot.org
> https://lists.buildroot.org/mailman/listinfo/buildroot
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

      parent reply	other threads:[~2026-03-14  7:54 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-03-07 18:54 [Buildroot] [PATCH 1/1] package/libheif: needs gcc >= 10 Bernd Kuhls
2026-03-07 20:19 ` Julien Olivain via buildroot
2026-03-14  7:54 ` Thomas Perale via buildroot [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20260314075414.15484-1-thomas.perale@mind.be \
    --to=buildroot@buildroot.org \
    --cc=bernd@kuhls.net \
    --cc=thomas.perale@mind.be \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox