id,summary,reporter,owner,description,type,status,priority,milestone,component,version,resolution,keywords,cc,port 65544,"qt(55|56|57)-qtconnectivity: error: use of undeclared identifier 'IOBluetoothAddServiceDict', 'IOBluetoothRemoveServiceWithRecordHandle'",chrstphrchvz,MarcusCalhoun-Lopez,"qt55-qtconnectivity, qt56-qtconnectivity, and qt57-qtconnectivity use APIs which were removed in the macOS 10.15 SDK: {{{ /usr/bin/clang -c -pipe -O2 -isysroot /Applications/Xcode-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.0.sdk -std=c++11 -stdlib=libc++ -mmacosx-version-min=12.0 -fvisibility=hidden -fvisibility-inlines-hidden -Wall -W -DQT_NO_MTDEV -DQT_NO_LIBUDEV -DQT_NO_EVDEV -DQT_NO_TSLIB -DQT_NO_LIBINPUT -DQT_BUILD_BLUETOOTH_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_OSX_BLUETOOTH -DQT_NO_EXCEPTIONS -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -DQT_NO_DEBUG -DQT_CORE_LIB -DQT_CONCURRENT_LIB -DQT_CORE_LIB -I. -I../../include -I../../include/QtBluetooth -I../../include/QtBluetooth/5.5.1 -I../../include/QtBluetooth/5.5.1/QtBluetooth -I/opt/local/libexec/qt5/lib/QtCore.framework/Headers -I/opt/local/libexec/qt5/lib/QtConcurrent.framework/Headers -I.moc -I/opt/local/libexec/qt5/mkspecs/macx-clang -F/opt/local/libexec/qt5/lib qbluetoothserviceinfo_osx.mm -o .obj/qbluetoothserviceinfo_osx.o qbluetoothserviceinfo_osx.mm:158:33: error: use of undeclared identifier 'IOBluetoothAddServiceDict' const IOReturn status = IOBluetoothAddServiceDict((CFDictionaryRef)serviceDict.data(), &recordRef); ^ qbluetoothserviceinfo_osx.mm:216:13: error: use of undeclared identifier 'IOBluetoothRemoveServiceWithRecordHandle'; did you mean 'BluetoothSDPServiceRecordHandle'? IOBluetoothRemoveServiceWithRecordHandle(newRecordHandle); ^ /Applications/Xcode-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.0.sdk/System/Library/Frameworks/IOBluetooth.framework/Headers/Bluetooth.h:2918:18: note: 'BluetoothSDPServiceRecordHandle' declared here typedef uint32_t BluetoothSDPServiceRecordHandle; ^ qbluetoothserviceinfo_osx.mm:253:9: error: use of undeclared identifier 'IOBluetoothRemoveServiceWithRecordHandle'; did you mean 'BluetoothSDPServiceRecordHandle'? IOBluetoothRemoveServiceWithRecordHandle(serviceRecordHandle); ^ /Applications/Xcode-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.0.sdk/System/Library/Frameworks/IOBluetooth.framework/Headers/Bluetooth.h:2918:18: note: 'BluetoothSDPServiceRecordHandle' declared here typedef uint32_t BluetoothSDPServiceRecordHandle; ^ }}} Ports will likely need to be marked `known_fail yes` for now. If someone wants these ports to build on 10.15 and later (and possibly 10.14 with Xcode 11), consider looking into backporting the upstream change for 10.9 and later ([https://invent.kde.org/qt/qt/qtconnectivity/-/commit/6b6b4fea]), as done by fink for Qt 5.7 ([https://github.com/fink/fink-distributions/blob/master/10.9-libcxx/stable/main/finkinfo/libs/qt5-qtconnectivity-xcode11.3.patch]).",defect,assigned,Normal,,ports,2.7.2,,,,qt55-qtconnectivity qt56-qtconnectivity qt57-qtconnectivity