cmake_minimum_required(VERSION 3.5) project(QtXlsx LANGUAGES CXX) if(WIN32) set(CMAKE_PREFIX_PATH "C:/DevelopEnv/Qt/5.15.2/mingw81_64") set(QT_VERSION "5.15.2") elseif(UNIX) set(CMAKE_PREFIX_PATH "/home/tian/Qt5.12.3/5.12.3/gcc_64") set(QT_VERSION "5.12.3") # solve program: undefined reference to symbol 'pthread_create@@GLIBC_2.2.5' set(CMAKE_CXX_FLAGS -pthread) endif() include_directories(${CMAKE_PREFIX_PATH}/include/QtCore) include_directories(${CMAKE_PREFIX_PATH}/include/QtCore/${QT_VERSION}) include_directories(${CMAKE_PREFIX_PATH}/include/QtCore/${QT_VERSION}/QtCore) include_directories(${CMAKE_PREFIX_PATH}/include/QtGui) include_directories(${CMAKE_PREFIX_PATH}/include/QtGui/${QT_VERSION}) include_directories(${CMAKE_PREFIX_PATH}/include/QtGui/${QT_VERSION}/QtGui) set(CMAKE_AUTOUIC ON) set(CMAKE_AUTOMOC ON) set(CMAKE_AUTORCC ON) set(CMAKE_CXX_STANDARD 17) add_definitions(-DXLSX_NO_LIB) add_compile_definitions(XLSX_NO_LIB) # 添加用到的qt库 find_package(Qt5 COMPONENTS Core Gui REQUIRED) include_directories(${PROJECT_SOURCE_DIR}/src) aux_source_directory(${PROJECT_SOURCE_DIR}/src/xlsx/ Module_SRC) add_library(${PROJECT_NAME} STATIC ${Module_SRC}) target_link_libraries(${PROJECT_NAME} Qt5::Core Qt5::Gui )