cmake_minimum_required(VERSION 3.5) set(exec_name mqtt) #包含源文件 file(GLOB LOCAL_SRC ${CMAKE_CURRENT_SOURCE_DIR}/*.qrc ${CMAKE_CURRENT_SOURCE_DIR}/*.rc ${CMAKE_CURRENT_SOURCE_DIR}/*.cpp ${CMAKE_CURRENT_SOURCE_DIR}/*.ui ${CMAKE_SOURCE_DIR}/common/mqtt/*.cpp ) # 生成可执行程序 if(CMAKE_BUILD_TYPE MATCHES Debug) add_executable(${exec_name} # WIN32 ${GLOBAL_SRC} ${LOCAL_SRC} ) elseif(CMAKE_BUILD_TYPE MATCHES Release) add_executable(${exec_name} # WIN32 ${GLOBAL_SRC} ${LOCAL_SRC} ) endif() #添加头文件 target_include_directories(${exec_name} PRIVATE ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_SOURCE_DIR}/common/mqtt ${qmqtt_INCLUDE_DIR} ) target_link_libraries(${exec_name} PRIVATE Qt5::Widgets Qt5::Core Qt5::Network # Qt5::Multimedia # Qt5::Xml # Qt5::Sql ) target_link_libraries(${exec_name} PRIVATE fmt::fmt spdlog::spdlog ${qmqtt_LIBRARY} ) if(CMAKE_CXX_COMPILER_ID MATCHES MSVC) target_link_libraries(${exec_name} PRIVATE # debug spdlogd.lib # optimized spdlog.lib ) elseif(CMAKE_CXX_COMPILER_ID MATCHES GNU) target_link_libraries(${exec_name} PRIVATE # debug # optimized ${SM_DLL} ) endif()