Как я могу решить две конфликтующие версии QT

Я использую ParallelsVirtualizationSDK.framework в своем проекте. Я предпочитаю использовать Qt6 вместо Qt5. Однако ParallelsVirtualizationSDK.framework зависит от Qt 5.15.1, и когда я использую Qt 6.0.2 (установленный через доморощенный) в своем проекте, я получаю эту ошибку:

objc[94021]: Class QMacAutoReleasePoolTracker is implemented in both /Library/Frameworks/ParallelsVirtualizationSDK.framework/Versions/9/Frameworks/QtCore.framework/Versions/5/QtCore (0x106d5d228) and /opt/homebrew/opt/qt/lib/QtCore.framework/Versions/A/QtCore (0x102b3d320). One of the two will be used. Which one is undefined.
objc[94021]: Class QT_ROOT_LEVEL_POOL__THESE_OBJECTS_WILL_BE_RELEASED_WHEN_QAPP_GOES_OUT_OF_SCOPE is implemented in both /Library/Frameworks/ParallelsVirtualizationSDK.framework/Versions/9/Frameworks/QtCore.framework/Versions/5/QtCore (0x106d5d2a0) and /opt/homebrew/opt/qt/lib/QtCore.framework/Versions/A/QtCore (0x102b3d398). One of the two will be used. Which one is undefined.
objc[94021]: Class KeyValueObserver is implemented in both /Library/Frameworks/ParallelsVirtualizationSDK.framework/Versions/9/Frameworks/QtCore.framework/Versions/5/QtCore (0x106d5d2c8) and /opt/homebrew/opt/qt/lib/QtCore.framework/Versions/A/QtCore (0x102b3d3c0). One of the two will be used. Which one is undefined.
objc[94021]: Class RunLoopModeTracker is implemented in both /Library/Frameworks/ParallelsVirtualizationSDK.framework/Versions/9/Frameworks/QtCore.framework/Versions/5/QtCore (0x106d5d318) and /opt/homebrew/opt/qt/lib/QtCore.framework/Versions/A/QtCore (0x102b3d410). One of the two will be used. Which one is undefined.

Вот CMakeLists.txt:

cmake_minimum_required(VERSION 3.19)
project(Parallels_Desktop_Launcher)

set(CMAKE_CXX_STANDARD 17)
set(CMAKE_PREFIX_PATH $ENV{QMAKE_PREFIX_PATH}) # QMAKE_PREFIX_PATH is set to /opt/homebrew/Cellar/qt/6.0.2/
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)
set(CMAKE_AUTOUIC ON)

set(QT_VERSION 6)
set(QT_REQUIRED_LIBS Core Gui Widgets)
set(QT_REQUIRED_LIBS_QUALIFIED Qt6::Core Qt6::Gui Qt6::Widgets)

add_executable(${PROJECT_NAME} main.cpp)

if (NOT CMAKE_PREFIX_PATH)
    message(WARNING "CMAKE_PREFIX_PATH is not defined, you may need to set it "
            "(-DCMAKE_PREFIX_PATH=\"path/to/Qt/lib/cmake\" or -DCMAKE_PREFIX_PATH=/usr/include/{host}/qt{version}/ on Ubuntu)")
endif ()

find_library(PARALLELS_VIRTUALIZATION_SDK ParallelsVirtualizationSDK)
find_package(Qt${QT_VERSION} COMPONENTS ${QT_REQUIRED_LIBS} REQUIRED)
target_link_libraries(${PROJECT_NAME} ${QT_REQUIRED_LIBS_QUALIFIED} ${PARALLELS_VIRTUALIZATION_SDK})

person yaoxi-std    schedule 13.07.2021    source источник
comment
Возможно полезно: stackoverflow.com/ вопросы/42694607/   -  person Jeremy Friesner    schedule 13.07.2021