On Tue, Aug 5, 2025 at 3:13 PM Emanuele Rocca <[email protected]> wrote: > geary fails to build from source on arm64 if built with GCC-15, currently in > experimental. > > GCC-15 includes support for an arm64 security feature called Guarded Control > Stack (GCS). To help with GCS adoption, the linker warns about shared > libraries > built without GCS. For example: > > > /usr/lib/gcc/aarch64-linux-gnu/15/../../../aarch64-linux-gnu/libncursesw.so.6: > warning: GCS is required by -z gcs, but this shared library lacks the > necessary property note. The dynamic loader might not enable GCS or refuse to > load the program unless all the shared library dependencies have the GCS > marking. > > The warning is harmless, and can be ignored. However, geary is built with > --fatal-warnings, and for this reason will fail to build on arm64 once GCC-15 > becomes the default compiler in Debian. > > Luckily, it is possible to switch the warning off by passing the argument > gcs-report-dynamic=none to the linker. Please consider adding the following to > your debian/rules: > > ifeq ($(DEB_TARGET_ARCH),arm64) > DEB_LDFLAGS_MAINT_APPEND=-Wl,-z,gcs-report-dynamic=none > endif > > This can be done even before GCC-15 becomes the default compiler, to avoid > build failures when it does.
gcc 15 is now the default in unstable and in Ubuntu questing. I did a test build in a questing PPA and the build succeeded on arm64 with no changes: https://launchpad.net/~jbicha/+archive/ubuntu/arch/+build/31132402 Thank you, Jeremy Bícha

