# Before to go we need to create the ui model with qt designer # In our case the main dialog model is named sampleappdialog.ui cmake_minimum_required (VERSION 2.6) project(sampleapp2) set(CMAKE_VERBOSE_MAKEFILE ON) set(DEPS "-lglu32 -lopengl32 -lgdi32 -luser32 -lmingw32 -lshell32") set(QT_DEPS "") find_package(Qt5Widgets) if(Qt5Widgets_FOUND) include_directories(${Qt5Widgets_INCLUDE_DIRS}) set(QT_DEPS ${QT_DEPS} ${Qt5Widgets_LIBRARIES}) endif() find_package(Qt5Core) if(Qt5Core_FOUND) include_directories(${Qt5Core_INCLUDE_DIRS}) set(QT_DEPS ${QT_DEPS} ${Qt5Core_LIBRARIES}) endif() find_package(Qt5Gui) if(Qt5Gui_FOUND) include_directories(${Qt5Gui_INCLUDE_DIRS}) set(QT_DEPS ${QT_DEPS} ${Qt5Gui_LIBRARIES}) endif() #print qt deps (if any has been found), if not do exit if(QT_DEPS) message(STATUS "Qt dependencies are: " ${QT_DEPS}) else() message(STATUS "Qt dependencies not found, exiting...") exit() endif() #add_definitions(${QT_DEFINITIONS}) #set(QT_DEFINES "-DUNICODE -DQT_DEPRECATED_WARNINGS -DQT_QML_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_NEEDS_QMAIN") set(QT_DEFINES "-DUNICODE -DQT_DEPRECATED_WARNINGS -DQT_QML_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB") set(EXTRA_FLAGS "-fno-keep-inline-dllexport -pipe -O2") #set(CMAKE_AUTOMOC ON) set(CMAKE_INCLUDE_CURRENT_DIR ON) set(CMAKE_BUILD_TYPE DEBUG) set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g -Wextra -Wall -W ${QT_DEFINES}") set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS} -g -Wextra -Wall -W ${QT_DEFINES}") set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS} -Wextra -Wall -W ${QT_DEFINES}") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g -Wextra -Wall -W -fexceptions -pthread -std=c++11 ${QT_DEFINES}") set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -g -Wextra -Wall -W -fexceptions -pthread -std=c++11 ${QT_DEFINES}") set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -Wextra -Wall -W -fexceptions -pthread -std=c++11 ${QT_DEFINES}") #set(QMAKE_CXXFLAGS "-fno-keep-inline-dllexport -pipe -O2 -g -Wextra -Wall -W -fexceptions -pthreads -std=c++11 ${QT_DEFINES}") set(GUI_TYPE WIN32) set(LIB_SOURCES maindialog.cpp) set(EXE_SOURCES main.cpp) set(UI_LIB sampleapp2ui) QT5_WRAP_CPP(sampleapp2ui_hdr_moc maindialog.h) QT5_WRAP_UI(sampleapp2ui_form_hdr maindialog.ui) set(LIB_SOURCES ${LIB_SOURCES} ${sampleapp2ui_hdr_moc} ${sampleapp2ui_form_hdr}) add_library(${UI_LIB} SHARED ${LIB_SOURCES}) #qt5_use_modules(${UI_LIB} Core Gui Widgets) target_link_libraries(${UI_LIB} ${QT_DEPS}) #add_executable(sampleapp2 ${GUI_TYPE} ${sampleapp2ui_hdr_moc} ${sampleapp2ui_form_hdr} ${SOURCES}) add_executable(sampleapp2 ${GUI_TYPE} ${EXE_SOURCES}) target_link_libraries(sampleapp2 ${UI_LIB} ${QT_DEPS}) #target_link_libraries(sampleapp2 ${UI_LIB}) #qt5_use_modules(sampleapp2 Core Gui Widgets)