phase1geo / Minder

Mind-mapping application for Elementary OS
GNU General Public License v3.0
976 stars 70 forks source link

1.16.2 build error #602

Closed tim77 closed 5 months ago

tim77 commented 5 months ago

https://kojipkgs.fedoraproject.org//work/tasks/8013/111878013/build.log

Vala: 0.56.14

phase1geo commented 5 months ago

How are you adding the additional gcc options?

phase1geo commented 5 months ago

I can't replicate these compile failures using Minder's build meson build system even in a Fedora 40 container. I'm going to need some help creating a build environment that I can reproduce these issues and verify their fix.

tim77 commented 5 months ago

This is canonical Fedora build flags which i MUST used for official packages:

CFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1  -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer '
CXXFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1  -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer '
FFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1  -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules '
FCFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1  -mbranch-protection=standard -fasynchronous-unwind-tables -fstack-clash-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules '
tim77 commented 5 months ago

It compiles fine locally for me as well for f39, f40. Something with Koji builders i guess. Sorry for noise. Closing until I can get more information.

https://src.fedoraproject.org/rpms/minder/pull-request/3

phase1geo commented 5 months ago

I'm just wondering if one of those compile arguments turns a compile warning into an error. When I build the application locally (with './app run'), I don't get any gcc output going to a logfile. Do you know how to enable logfile output in Meson by any chance? If I could see the same type of output on my end as you are seeing on your end, I could at least comfirm my suspicions (and fix the warnings).

tim77 commented 5 months ago

This could related to porting on modern C and F40 progress.

Come up with a way to resolve the Vala situation, likely by embedded “#pragma GCC diagnostic” in the generated C source files. Vala is currently not able to generate type-safe C, and is unlikely that this going to change soon. (The numbers above do not include packages which have failures in Vala code only.) In some cases, there is nothing that can be done about this on the Vala source code side. Not all of these type errors are harmless, of course, but I don't see a way to deal with this except by telling GCC to be less picky.