Opened 4 weeks ago
Last modified 7 days ago
#62220 new defect
KeePassXC @2.6.4: no member named 'MacOSBigSur' in 'QOperatingSystemVersion'
Reported by: | thetrial (alabay) | Owned by: | |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.6.4 |
Keywords: | elcapitan | Cc: | MarcusCalhoun-Lopez (Marcus Calhoun-Lopez) |
Port: | KeePassXC |
Description
KeePassXC 2.6.2 and 2.6.3 built flawless, but with 2.6.4 I ran into this issue:
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_security_KeePassXC/KeePassXC/work/keepassxc-2.6.4-src/src/gui/styles/base/BaseStyle.cpp:295:84: error: no member named 'MacOSBigSur' in 'QOperatingSystemVersion' :info:build if (QOperatingSystemVersion::current() >= QOperatingSystemVersion::MacOSBigSur) { :info:build ~~~~~~~~~~~~~~~~~~~~~~~~~^ :info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_security_KeePassXC/KeePassXC/work/keepassxc-2.6.4-src/src/gui/styles/base/BaseStyle.cpp:302:84: error: no member named 'MacOSBigSur' in 'QOperatingSystemVersion' :info:build if (QOperatingSystemVersion::current() >= QOperatingSystemVersion::MacOSBigSur) { :info:build ~~~~~~~~~~~~~~~~~~~~~~~~~^ :info:build 2 errors generated. :info:build make[2]: *** [src/CMakeFiles/keepassx_core.dir/gui/styles/base/BaseStyle.cpp.o] Error 1 :info:build make[2]: *** Waiting for unfinished jobs.... :info:build make[2]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_security_KeePassXC/KeePassXC/work/build' :info:build make[1]: *** [src/CMakeFiles/keepassx_core.dir/all] Error 2 :info:build make[1]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_security_KeePassXC/KeePassXC/work/build' :info:build make: *** [all] Error 2
Change History (6)
comment:1 Changed 4 weeks ago by ryandesign (Ryan Schmidt)
comment:2 Changed 4 weeks ago by thetrial (alabay)
Again a Qt thing. That means: Either this capability is backported into older Qt versions for El Capitan (and maybe older OSs) – or KeePassXC is out of the race for El Capitan, which I would quite regret. Then KeePass’ portfile should be adapted to drop El Capitan.
What, do you think, is practicable? Or is this (together with other Qt related things, e.g. owncloud-client) a general Qt issue? I would not know how to describe that as a ticket).
comment:3 Changed 4 weeks ago by thetrial (alabay)
Comment to my question under your mentioned Qt commit:
No upstream-supported version of Qt supports El Capitan (Qt 5.12 supports macOS 10.12 and up), but back-porting this to non-supported Qt versions (in macports, if that's what you're referring to), shouldn't be too hard.
Does anyone know how to realize that?
comment:4 Changed 4 weeks ago by ryandesign (Ryan Schmidt)
Cc: | MarcusCalhoun-Lopez added |
---|
I'll Cc Marcus for input since he maintains the Qt ports.
Option seems to be:
- patch Qt 5.11 (and earlier?) source code to add this constant and maybe other related aspects of that upstream Qt commit,
- patch KeePassXC so that it does not rely on this aspect of Qt 5.12+,
- change the KeePassXC portfile so that version 2.6.3 is used on OS X 10.11 and earlier, or
- change the KeePassXC portfile to prevent installation on OS X 10.11 and earlier (by indicating a requirement for Qt 5.12+)
comment:6 Changed 7 days ago by thetrial (alabay)
Any solution in sight? After a complete reinstall of Macports I don’t get any KeePassXC anymore. I have to pull the binary from my backup, detached from MacPorts.
As you've discovered, KeePassXC 2.6.4 now requires a version of Qt that can identify macOS Big Sur. According to this Qt commit this has been backported to Qt 5.12 and 5.15. Being on OS X El Capitan, the latest version of Qt you can use is 5.11.