cmake_minimum_required(VERSION 3.5) SET(VERSION_SHORT 0.1) project(MainWindowExample VERSION ${VERSION_SHORT}) set(CMAKE_INCLUDE_CURRENT_DIR ON) set(CMAKE_AUTOMOC ON) set(CMAKE_AUTORCC ON) # qt库加载,最低要求5.8 find_package(QT NAMES Qt6 Qt5 COMPONENTS Core REQUIRED) find_package(Qt${QT_VERSION_MAJOR} 5.8 COMPONENTS Core Gui Widgets REQUIRED) add_executable(MainWindowExample WIN32 mainwindow.h mainwindow.cpp main.cpp saribbonresouce.qrc ) if(NOT TARGET SARibbonBar) # 说明这个例子是单独加载 message(STATUS "NOT TARGET SARibbonBar find_package(SARibbonBar REQUIRED)") find_package(SARibbonBar REQUIRED) endif() target_link_libraries(MainWindowExample PUBLIC SARibbonBar::SARibbonBar) target_link_libraries(MainWindowExample PUBLIC Qt${QT_VERSION_MAJOR}::Core Qt${QT_VERSION_MAJOR}::Gui Qt${QT_VERSION_MAJOR}::Widgets) set_target_properties(MainWindowExample PROPERTIES AUTOMOC ON AUTORCC ON AUTOUIC ON CXX_EXTENSIONS OFF DEBUG_POSTFIX ${CMAKE_DEBUG_POSTFIX} VERSION ${SARIBBON_VERSION} EXPORT_NAME MainWindowExample ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib" LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib" RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin" ) install(TARGETS MainWindowExample RUNTIME DESTINATION bin LIBRARY DESTINATION bin ARCHIVE DESTINATION lib )