Re: qt5 does not build, missing functions?

Scott Hannahs via Fink-users <[email protected]>
Newsgroups gmane.os.apple.fink.general
Message-ID <[email protected]>
On Jul 4, 2023, at 6:30 AM, Hanspeter Niederstrasser <[email protected]> wrote:
> 
> On 6/30/23 6:31 AM, Scott Hannahs via Fink-users wrote:
>> When running “fink update qt5-mac-qtbase”, I get a compiler error.  Seems that “ATSFontNotify” and related functions do not exist anymore.  They were deprecated a long time ago.  I see that the current qt5-mac release is 5.15.2 and maybe that resolves issues with later OS versions?
>> updated with “fink self-update”
>> set #jobs to 1
>> MacOS 13.4.1
>> fink version 14.3.1
>> X86 architecture
>> I get the following error returned:
>> /Applications/Xcode.app/Contents/Developer/usr/bin/g++ -c -MD -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk -mmacosx-version-min=13.4 -fconstant-cfstrings -O2 -fPIC -std=c++1z -fvisibility=hidden -fvisibility-inlines-hidden -fno-exceptions -Wall -W -Wvla -Wdate-time -DQT_NO_MTDEV -DQT_NO_LIBUDEV -DQT_NO_EVDEV -DQT_NO_TSLIB -DQT_NO_LIBINPUT -DQT_NO_CAST_FROM_ASCII -DQT_BUILD_PLATFORMSUPPORT_LIB -DQT_BUILDING_QT -DQT_NO_CAST_TO_ASCII -DQT_ASCII_CAST_WARNINGS -DQT_MOC_COMPAT -DQT_USE_QSTRINGBUILDER -DQT_DEPRECATED_WARNINGS -DQT_DISABLE_DEPRECATED_BEFORE=0x050000 -DQT_NO_EXCEPTIONS -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I. -Icglconvenience -Iaccessibility -I../../include -I../../include/QtPlatformSupport -I../../include/QtPlatformSupport/5.7.1 -I../../include/QtPlatformSupport/5.7.1/QtPlatformSupport -I../../include/QtGui/5.7.1 -I../../include/QtGui/5.7.1/QtGui -I../../include/QtCore/5.7.1 -I../../include/QtCore/5.7.1/QtCore -I../../include/QtGui -I../../include/QtCore -I.moc -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk/System/Library/Frameworks/OpenGL.framework/Headers -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk/System/Library/Frameworks/AGL.framework/Headers -I../../mkspecs/macx-g++ -F/opt/sw/src/fink.build/qt5-mac-qtbase-5.7.1-13/qtbase-opensource-src-5.7.1/lib -o .obj/qcoretextfontdatabase.o fontdatabases/mac/qcoretextfontdatabase.mm
>> In file included from fontdatabases/mac/qcoretextfontdatabase.mm:51:
>> In file included from fontdatabases/mac/qcoretextfontdatabase_p.h:58:
>> In file included from ../../include/QtGui/5.7.1/QtGui/qpa/qplatformfontdatabase.h:1:
>> In file included from ../../include/QtGui/5.7.1/QtGui/qpa/../../../../../src/gui/text/qplatformfontdatabase.h:60:
>> In file included from ../../include/QtGui/5.7.1/QtGui/private/qfontengine_p.h:1:
>> In file included from ../../include/QtGui/5.7.1/QtGui/private/../../../../../src/gui/text/qfontengine_p.h:59:
>> In file included from ../../include/QtGui/5.7.1/QtGui/private/qtextengine_p.h:1:
>> In file included from ../../include/QtGui/5.7.1/QtGui/private/../../../../../src/gui/text/qtextengine_p.h:58:
>> In file included from ../../include/QtGui/qtextlayout.h:1:
>> In file included from ../../include/QtGui/../../src/gui/text/qtextlayout.h:48:
>> In file included from ../../include/QtGui/qevent.h:1:
>> In file included from ../../include/QtGui/../../src/gui/kernel/qevent.h:49:
>> In file included from ../../include/QtCore/qvariant.h:1:
>> …..
>> fontdatabases/mac/qcoretextfontdatabase.mm:971:13: error: ‘ATSFontDeactivate' is unavailable
>>             ATSFontDeactivate(font.value<ATSFontContainerRef>(), 0, kATSOptionFlagsDoNotNotify);
>>             ^
>> /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk/System/Library/Frameworks/ApplicationServices.framework/Frameworks/ATS.framework/Headers/ATSFont.h:385:1: note: 'ATSFontDeactivate' has been explicitly marked unavailable here
>> ATSFontDeactivate(
>> ^
>> fontdatabases/mac/qcoretextfontdatabase.mm:979:5: error: 'ATSFontNotify' is unavailable
>>     ATSFontNotify(kATSFontNotifyActionFontsChanged, 0);
>>     ^
>> /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk/System/Library/Frameworks/ApplicationServices.framework/Frameworks/ATS.framework/Headers/ATSFont.h:1144:1: note: 'ATSFontNotify' has been explicitly marked unavailable here
>> ATSFontNotify(
>> ^
>> 26 warnings and 6 errors generated.
>> make[2]: *** [.obj/qcoretextfontdatabase.o] Error 1
>> make[2]: Leaving directory `/opt/sw/src/fink.build/qt5-mac-qtbase-5.7.1-13/qtbase-opensource-src-5.7.1/src/platformsupport'
>> make[1]: *** [sub-platformsupport-make_first] Error 2
>> make[1]: Leaving directory `/opt/sw/src/fink.build/qt5-mac-qtbase-5.7.1-13/qtbase-opensource-src-5.7.1/src'
>> make: *** [sub-src-make_first] Error 2
>> make: Leaving directory `/opt/sw/src/fink.build/qt5-mac-qtbase-5.7.1-13/qtbase-opensource-src-5.7.1'
>> ### execution of /tmp/fink.nVpiL failed, exit code 2
>> ### execution of /tmp/fink.N1dqr failed, exit code 2
>> Removing runtime build-lock...
>> Removing build-lock package...
>> /opt/sw/bin/dpkg-lockwait -r fink-buildlock-qt5-mac-qtbase-5.7.1-13
>> (Reading database ... 294161 files and directories currently installed.)
>> Removing fink-buildlock-qt5-mac-qtbase-5.7.1-13 (2023.06.29-23.43.20) ...
>> Failed: phase compiling: qt5-mac-qtbase-5.7.1-13 failed
>> Also include the following system information:
>> Package manager version: 0.45.99.git
>> Distribution version: selfupdate-git Thu Jun 29 20:36:27 2023, 12.0, x86_64
>> Trees: local/injected local/main stable/main
> 
> This is going to force a decision because qt5.15 has a minimum version of macOS 10.13 and I'm not sure if it's perfectly compatible with earlier Qt versions. So can't just make an OS specific release of the qt5-mac-qtbase and siblings packages, but if we put qt5.15 as a new package, we'll have to also split things that use qt5 into different OS-specific packages.
> 
> I have an older 5.15.1 package from some years ago here: https://github.com/nieder/fink-distributions/commits/qt5.15
> 
> See also: https://github.com/fink/fink-distributions/pull/675
> 
> Hanspeter

I see the problem….   And the added complication that IRRC, the qt5.15 version was the first to support Apple Silicon.

In reading that pull request, I see that,for qt5.7 does not work on recent MacOS versions and is kept around for compatibility with MacOS 10.9-10.12, but it seems that this old version does not work on MacOS 11+ which needs qt5.15 which works only on 10.13+.  Is this where OS versioning comes in using the “Distribution” tag and we restrict the two versions?  Or am I missing something obvious?

To me the PR looks like all the heavy lifting has already been done.

Not to mention qt6….  :-)

-Scott

_______________________________________________
Fink-users mailing list
[email protected]
List archive:
https://sourceforge.net/p/fink/mailman/fink-users/
Subscription management:
https://lists.sourceforge.net/lists/listinfo/fink-users
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.