Details
-
Bug
-
Resolution: Fixed
-
P2: Important
-
6.5.1
-
None
-
-
1bf144ba7 (dev), 3f6e0f5b6 (6.5), 41670375f (6.6)
Description
While trying to build the spack package qt-base with variant network (i.e. qtbase+network) I ran into the same issue that was reported against vcpkg: linking lib/QtNetwork.framework/Versions/A/QtNetwork fails with ___gss_c_nt_hostbased_service_oid_desc being unresolved in qauthenticator.cpp.
Similar to vcpkg, spack also sets CMAKE_FIND_FRAMEWORK=LAST. Because of this GSSAPI_LIBRARIES in FindGSSAPI.cmake will end up with libgssapi_krb5 instead of the GSS framework. But the results from this FindGSSAPI.cmake are only partially honored on macOS:
with Q_OS_DARWIN the code in src/network/kernel/qauthenticator.cpp includes <GSS/GSS.h> which is the header from the GSS framework, no matter what the contents of GSSAPI_INCLUDES, but linking will be done against $GSSAPI_LIBRARIES. Hence the inconsistency and linker error, if not the GSS framework is picked up.
The patch from https://codereview.qt-project.org/c/qt/qtbase/+/478396 addresses this issue only partially, as the conflicting gssapi_krb5 is removed from the list of candidate libraries on APPLE only under the additional condition that Qt is built from vcpkg.
Attachments
Issue Links
- mentioned in
-
Page Loading...