! Please note that this is a snapshot of our old Bugzilla server, which is read only since May 29, 2020. Please go to gitlab.xfce.org for our new server !
compilation with gcc 10 breaks functionality (CPU Frequency Monitor fails to ...
Status:
RESOLVED: MOVED
Severity:
critical
Product:
Xfce4-cpufreq-plugin
Component:
General

Comments

Description Raphael Groner 2020-05-03 11:18:11 CEST
Forwarding from downstream.
https://bugzilla.redhat.com/show_bug.cgi?id=1830261


Description of problem:

After upgrade to Fedora 32, upon login, I get error window saying

  Plugin "CPU Frequency Monitor" unexpectedly left the panel, do you want to restart it?

and re-executing does not help.

Version-Release number of selected component (if applicable):

xfce4-cpufreq-plugin-1.2.1-5.fc32.x86_64

How reproducible:

Deterministic.

Steps to Reproduce:
1. Add CPU Frequence Monitor to XFCE panel on Fedora 32.

Actual results:

Error window saying Plugin "CPU Frequency Monitor" unexpectedly left the panel, do you want to restart it?

Expected results:

It shows up in the panel and starts showing the frequency.

Additional info:

In ~/.xsession-errors, there is

(process:1872): xfce4-panel-wrapper-CRITICAL **: 13:38:58.691: Wrapper cpufreq-21: Failed to open plugin module "/usr/lib64/xfce4/panel/plugins/libcpufreq.so": /usr/lib64/xfce4/panel/plugins/libcpufreq.so: undefined symbol: cpuFreq.

Add Comment
Comment 1 Raphael Groner 2020-05-03 11:20:10 CEST
Red Hat provides a patch to avoid confusion in gcc10:

https://src.fedoraproject.org/rpms/xfce4-cpufreq-plugin/raw/92599dc0a55fc31e1090c876810b13a1c51bdc67/f/xfce4-cpufreq-plugin-1.2.1-gcc10-common.patch

Jonathan Wakely 2020-05-03 10:11:02 CEST
It looks like the problem is due to this change in GCC:

"GCC now defaults to -fno-common. As a result, global variable accesses are more efficient on various targets. In C, global variables with multiple tentative definitions now result in linker errors. With -fcommon such definitions are silently merged during linking."

Your change to the spec file changes the variable from multiple definitions to *no* definitions (just declarations).

You need to declare it in the header, and define it in exactly one file, as explained at https://gcc.gnu.org/gcc-10/porting_to.html#common
Comment 2 Git Bot editbugs 2020-05-22 23:36:23 CEST
-- GitLab Migration Automatic Message --

This bug has been migrated to xfce.org's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.xfce.org/panel-plugins/xfce4-cpufreq-plugin/-/issues/6.

Please create an account or use an existing account on one of our supported OAuth providers. 

If you want to fork to submit patches and merge requests please continue reading here: https://docs.xfce.org/contribute/dev/git/start#gitlab_forks_and_merge_requests

Also feel free to reach out to us on the mailing list https://mail.xfce.org/mailman/listinfo/xfce4-dev

Bug #16798

Reported by:
Raphael Groner
Reported on: 2020-05-03
Last modified on: 2020-05-22

People

Assignee:
Xfce-Goodies Maintainers
CC List:
0 users

Version

Attachments

Additional information