From 9a037363e27d787f41385f6762c2eb86a3411e94 Mon Sep 17 00:00:00 2001 From: copi143 Date: Thu, 11 Dec 2025 23:44:30 +0800 Subject: [PATCH] =?UTF-8?q?=E6=95=B4=E7=90=86=E5=AF=BC=E5=85=A5=E7=9A=84?= =?UTF-8?q?=E5=A4=B4=E6=96=87=E4=BB=B6=E4=BB=A5=E6=9C=80=E5=B0=8F=E5=8C=96?= =?UTF-8?q?=E5=A4=B4=E6=96=87=E4=BB=B6=E4=BE=9D=E8=B5=96=EF=BC=8C=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=E7=BC=96=E8=AF=91=E5=8F=82=E6=95=B0=E4=BB=A5=E5=8A=A0?= =?UTF-8?q?=E5=BF=ABdebug=E7=BC=96=E8=AF=91=E9=80=9F=E5=BA=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CMakeLists.txt | 15 ++++++++++++++- src/BarcodeWidget.cpp | 6 +++++- src/BarcodeWidget.h | 12 +++++------- src/CameraWidget.cpp | 8 +++----- src/CameraWidget.h | 4 ++-- src/FrameWidget.cpp | 2 ++ src/about_dialog.cpp | 2 +- src/components/UiConfig.cpp | 2 +- src/components/message_dialog.cpp | 2 ++ src/convert.h | 4 ++-- src/main.cpp | 1 - src/mqtt/MQTTMessageWidget.cpp | 2 +- src/mqtt/mqtt_client.cpp | 1 + 13 files changed, 39 insertions(+), 22 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index fe1b26ac..f777bf36 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,5 +1,7 @@ cmake_minimum_required(VERSION 3.10) +set(CMAKE_EXPORT_COMPILE_COMMANDS ON) + project(Lab2QRCode) set(CMAKE_CXX_STANDARD 20) @@ -19,7 +21,7 @@ add_custom_target( COMMAND ${CMAKE_COMMAND} -E echo "Running PowerShell script..." COMMAND pwsh -ExecutionPolicy Bypass -File ${CMAKE_SOURCE_DIR}/scripts/build/version_info.ps1 WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/src/version_info - COMMENT "powershell -ExecutionPolicy Bypass -File ${CMAKE_SOURCE_DIR}/version_info.ps1" + COMMENT "powershell -ExecutionPolicy Bypass -File ${CMAKE_SOURCE_DIR}/scripts/build/version_info.ps1" BYPRODUCTS ${VERSION_CPP}) if(MSVC) @@ -39,7 +41,14 @@ if(NOT XLSXWRITER_INCLUDE_DIR OR NOT XLSXWRITER_LIBRARY) message(FATAL_ERROR "Could not find xlsxwriter library or include directory") endif() +if(CMAKE_CXX_COMPILER_ID MATCHES "Clang|GNU") + set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -Og") + set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -Og") + set(CMAKE_EXE_LINKER_FLAGS_DEBUG "${CMAKE_EXE_LINKER_FLAGS_DEBUG} -O0 -Wl,-O0") +endif() + file(GLOB_RECURSE SOURCES "src/*.cpp") +list(REMOVE_ITEM SOURCES "${VERSION_CPP}") add_executable(${PROJECT_NAME} WIN32 ${SOURCES} ${VERSION_CPP} "logo.rc") add_dependencies(${PROJECT_NAME} RunPowerShellScript) @@ -57,6 +66,10 @@ target_link_libraries( Boost::random spdlog::spdlog_header_only) +if(CMAKE_BUILD_TYPE STREQUAL "Debug") + target_precompile_headers(${PROJECT_NAME} PRIVATE ) +endif() + target_include_directories(${PROJECT_NAME} PRIVATE ${XLSXWRITER_INCLUDE_DIR}) target_link_libraries(${PROJECT_NAME} PRIVATE ${XLSXWRITER_LIBRARY}) diff --git a/src/BarcodeWidget.cpp b/src/BarcodeWidget.cpp index cf9e8496..0152e59a 100644 --- a/src/BarcodeWidget.cpp +++ b/src/BarcodeWidget.cpp @@ -4,6 +4,7 @@ #include "components/message_dialog.h" #include "convert.h" #include "version_info/version.h" + #include #include #include @@ -25,9 +26,12 @@ #include #include #include -#include +#include +#include +#include #include #include + template requires(std::is_void_v || std::is_default_constructible_v) struct overload_def_noop : private Fs... { diff --git a/src/BarcodeWidget.h b/src/BarcodeWidget.h index d0ae27f8..d62fe158 100644 --- a/src/BarcodeWidget.h +++ b/src/BarcodeWidget.h @@ -1,17 +1,15 @@ #pragma once -#include - -#include -#include -#include -#include - #include "CameraWidget.h" #include "convert.h" #include "mqtt/MQTTMessageWidget.h" #include "mqtt/mqtt_client.h" +#include +#include +#include +#include + class QLineEdit; class QPushButton; class QLabel; diff --git a/src/CameraWidget.cpp b/src/CameraWidget.cpp index 279aaba4..c493189a 100644 --- a/src/CameraWidget.cpp +++ b/src/CameraWidget.cpp @@ -1,28 +1,26 @@ #include "CameraWidget.h" #include "sysinfo.h" + #include -#include -#include #include #include #include #include -#include #include #include #include #include #include -#include #include #include #include #include #include -#include #include #include #include +#include +#include #include #include #include diff --git a/src/CameraWidget.h b/src/CameraWidget.h index baba58ed..fbe22ed4 100644 --- a/src/CameraWidget.h +++ b/src/CameraWidget.h @@ -4,14 +4,14 @@ #include "CameraConfig.h" #include "FrameWidget.h" #include "commondef.h" + #include -#include #include #include #include #include #include -#include +#include #include #include #include diff --git a/src/FrameWidget.cpp b/src/FrameWidget.cpp index 0a073a0a..c74f53e3 100644 --- a/src/FrameWidget.cpp +++ b/src/FrameWidget.cpp @@ -1,8 +1,10 @@ #include "FrameWidget.h" + #include #include #include #include + namespace { // 输入 outer rect 和图像宽高,返回居中等比缩放后的 rect diff --git a/src/about_dialog.cpp b/src/about_dialog.cpp index f560332d..a3cf07ce 100644 --- a/src/about_dialog.cpp +++ b/src/about_dialog.cpp @@ -1,6 +1,6 @@ #include "about_dialog.h" #include "components/UiConfig.h" -#include + #include #include #include diff --git a/src/components/UiConfig.cpp b/src/components/UiConfig.cpp index 95892272..47b436bf 100644 --- a/src/components/UiConfig.cpp +++ b/src/components/UiConfig.cpp @@ -1,8 +1,8 @@ #include "UiConfig.h" #include "../logging.h" + #include #include -#include #include #include #include diff --git a/src/components/message_dialog.cpp b/src/components/message_dialog.cpp index 37e65f9f..9325276d 100644 --- a/src/components/message_dialog.cpp +++ b/src/components/message_dialog.cpp @@ -1,4 +1,5 @@ #include "message_dialog.h" + #include #include #include @@ -7,6 +8,7 @@ #include #include #include + MessageDialog::MessageDialog(QWidget *parent) : QDialog(parent) { setMinimumSize(400, 300); diff --git a/src/convert.h b/src/convert.h index c790b753..a9b0eba9 100644 --- a/src/convert.h +++ b/src/convert.h @@ -6,7 +6,6 @@ #define LAB2QRCODE_CONVERT_H #include -#include #include #include @@ -16,7 +15,8 @@ #include #include #include -#include +#include +#include /** * @namespace convert diff --git a/src/main.cpp b/src/main.cpp index 131c9615..0e631094 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -1,6 +1,5 @@ #include "BarcodeWidget.h" #include "components/UiConfig.h" -#include "convert.h" #include "logging.h" #include diff --git a/src/mqtt/MQTTMessageWidget.cpp b/src/mqtt/MQTTMessageWidget.cpp index d920082f..ce4e2547 100644 --- a/src/mqtt/MQTTMessageWidget.cpp +++ b/src/mqtt/MQTTMessageWidget.cpp @@ -1,5 +1,5 @@ - #include "MQTTMessageWidget.h" + #include #include #include diff --git a/src/mqtt/mqtt_client.cpp b/src/mqtt/mqtt_client.cpp index a0591551..4c05809d 100644 --- a/src/mqtt/mqtt_client.cpp +++ b/src/mqtt/mqtt_client.cpp @@ -1,4 +1,5 @@ #include "mqtt_client.h" + #include #include #include