-
-
Notifications
You must be signed in to change notification settings - Fork 552
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[BUILD] GCC 11 build error with -O2 -g
#1590
Comments
This genuinely means nothing to me and appears pretty esoteric. Maybe someone more interested in compiler options and the eccentricities of GCC can solve this one. |
@itsmattkc Yeah, when trying to see where the thread of files leads, I ended up hitting a brick wall at a Qt header. Since this seems like a Qt bug of some sorts, I'll try seeing which commit broke it and go from there. If the new commits somehow fix this, then I'll just close the issue and add which commit caused this later. |
So, this seems to somehow be caused by 8373579. |
Tested with the stated flags in GCC10 and couldn't reproduce. I'd assume this issue is related to GCC11 and its yet unfinished state. |
So, after some testing, I have concluded that even just putting |
-O3
-O2 -g
I've been able to reproduce this with GCC11 (11.0.1 20210426 (prerelease)). After trial and error i've been able to reproduce the error also with |
-O2 -g
-O2 -g
Those two commits should introduce any problems I don't think, they just cache the result of calling I could be totally wrong though, I'm not a compiler person |
Ffmpeg compiles fine with GCC11 (minus TEXTREL and -Warray-bounds QA notice from package manager). The particular warning here is weird in that it points to QTypedArrayData struct, while stringop-overflow should "warn for calls to string manipulation functions such as memcpy and strcpy that are determined to overflow the destination buffer". Otherwise it compiles and completes tests fine if you just ignore the warning |
Yeah I really don't see anything in that PR that would cause a problem. I'm pretty sure this is a bug with GCC11, particularly because no other compiler exhibits this issue. As such, I'm going to close this on our end and I suggest bring it up with GCC's developers. |
@itsmattkc Thankfully, CMake setting Note |
Considering this issue was continuing to cause issues (apparently even breaking the |
Commit Hash
542e5f4
Platform
Ubuntu Hirsute Hippo (21.04), GCC 11
g++ (Ubuntu 11-20210417-1ubuntu1) 11.0.1 20210417 (experimental) [master revision c1c86ab96c2:b6fb0ccbb48:8ae884c09fbba91e9cec391290ee4a2859e7ff41]
Summary
When building Olive with
-march=native -pipe -pthread -fuse-ld=bfd -O3 -ggdb3 -fdebug-types-section -fasynchronous-unwind-tables -fstack-clash-protection -fstack-protector-strong -fno-plt -Wall -Wextra -fno-omit-frame-pointer
, the compilation fails atapp/CMakeFiles/libolive-editor.dir/codec/ffmpeg/ffmpegdecoder.cpp.o
. When building with-march=native -pipe -pthread -fuse-ld=bfd -Og -ggdb3 -fdebug-types-section -fasynchronous-unwind-tables -fstack-clash-protection -fstack-protector-strong -fno-plt -Wall -Wextra -fno-omit-frame-pointer
, the error does not occur.This has started after pulling these new commits:
Additional Information / Output
The text was updated successfully, but these errors were encountered: