On Fri, 2020-07-24 at 10:31 +0200, Fabio Valentini wrote:
Hi all,
I'm starting to see various very strange kinds of build failures in
rawhide, that seem to have started with either of these updates (or a
combination of them):
- annobin 9.21-1.fc33 → 9.22-1.fc33
- binutils 2.34.0-6.fc33 → 2.34.0-7.fc33
- elfutils 0.179-2.fc33 → 0.180-2.fc33
- glibc 2.31.9000-13.fc33 → 2.31.9000-14.fc33
These rawhide updates all happened at roughly the same time, so it's
difficult to say which one of them is to blame (if any of them).
One error I've seen in libreoffice is a gcc / annobin segfault:
[build CXX] vcl/unx/gtk3/gtk3gtkinst.cxx
*** WARNING *** there are active plugins, do not report this as a bug
unless you can reproduce it without enabling any plugins.
Event | Plugins
PLUGIN_FINISH_UNIT | annobin: Generate final annotations
PLUGIN_START_UNIT | annobin: Generate global annotations
PLUGIN_ALL_PASSES_START | annobin: Generate per-function annotations
PLUGIN_ALL_PASSES_END | annobin: Register per-function end symbol
/builddir/build/BUILD/libreoffice-6.4.5.2/vcl/workben/vcldemo.cxx: In
destructor 'virtual DemoWin::RenderThread::~RenderThread()':
/builddir/build/BUILD/libreoffice-6.4.5.2/vcl/workben/vcldemo.cxx:1733:18:
internal compiler error: Segmentation fault
1733 | join();
This sounds like a compiler bug. Can you try adding
"%define _lto_cflags %{nil}"
To the .spec file and see if that gets you over the hump? I've seen one failure
of this nature in my LTO testing and haven't gotten around to producing a
bugreport suitable for upstream (but the affected package has LTO disabled to
keep it from failing its builds). My tester reports that it's never got a clean
control build of libreoffice, so I've never dug into it for any LTO specific
failures.
| ^
Other errors look like this one from switchboard-plug-onlineaccounts:
src/libonline-accounts.so.p/Authentification/Server.c: In function
‘online_accounts_server_on_bus_acquired’:
src/libonline-accounts.so.p/Authentification/Server.c:498:2: error:
function ‘__errno_location’ is initialized like a variable
498 | gint errno = 0;
| ^~~~
Where errno is neither __errno_location, nor a function, but a gint??
This is more
likely related to the glibc update.
Other failures I've seen end up with linker failures, line these, from
postgresql:
ld: undefined reference to `postgresql_subtrans__checkpoint__start_semaphore'
This is a known interaction between stap/dtrace probes and LTO. I've already
fixed postgresql to avoid LTO until we fix this issue on the GCC side.
jeff