easyeffects icon indicating copy to clipboard operation
easyeffects copied to clipboard

Got a huge warning after recompiling

Open Digitalone1 opened this issue 1 year ago • 10 comments

I can't even paste it here since it's loo long.

https://pastebin.com/0mpxXa6L

I can launch the compiled build, but I don't have any clue on the meaning of these warnings.

Digitalone1 avatar May 17 '23 13:05 Digitalone1

Even with the sanatizer tuned on I do not see so many warnings. And there is none in our automated build https://github.com/wwmm/easyeffects/actions/runs/5004142144/jobs/8966340274. Did you try to build from a clean folder to see if the warnings remain?

wwmm avatar May 17 '23 14:05 wwmm

I have a _build folder where I give the ninja command. How can a make a clean folder? Delete and recreate _build?

Digitalone1 avatar May 17 '23 14:05 Digitalone1

How can a make a clean folder? Delete and recreate _build?

It is the guaranteed way. You can try ninja clean before doing this. But this is probably only going to clean some compiled objects.

wwmm avatar May 17 '23 14:05 wwmm

Did it. I got the same warnings.

Digitalone1 avatar May 17 '23 15:05 Digitalone1

But I don't see them when I compile from AUR. This is really weird.

Digitalone1 avatar May 17 '23 16:05 Digitalone1

In CI the warnings show up in the GitHub CodeQL job but not in the Arch job.

https://github.com/wwmm/easyeffects/actions/runs/5004142144/jobs/8966331929#step:6:264

The difference between them is that the Arch build has a wrapper around the build (designed to build things into a correct Arch package). Meanwhile the CodeQL build is just a normal Meson build likely similar to what you're doing. Note both jobs are running in the latest Arch container.

There might be slightly different dependencies installed for both.

vchernin avatar May 17 '23 16:05 vchernin

I decided to delete my previous build folder and now I see all those warnings. It is probably related to the new gcc version. I will test with clang to see what happens.

wwmm avatar May 17 '23 21:05 wwmm

I will test with clang to see what happens.

I forgot Arch does not have the latest clang yet :smile:. So I cannot test this now.

wwmm avatar May 17 '23 21:05 wwmm

I am looking at the warnings and it does not seem we can do anything about them. Most if not all are related to /usr/include/c++/13.1.1/bits/specfun.h. It seems to be one of those cases where the compiler shows warnings about the standard c++ library....

wwmm avatar May 17 '23 21:05 wwmm

This warning appears depending on the flags used. You can hide the warning by setting one of the following:

  • -Dbuildtype=plain (no optimizations and debug info)
  • -Dbuildtype=debug (no optimizations)
  • -Db_lto=true (enables link time optimization)

e.g. meson setup _build -Dbuildtype=debug

This is why the arch build doesn't show the warning. It uses the PKGBUILD file, which uses arch-meson which enables some of these flags.

vchernin avatar May 18 '23 19:05 vchernin