From 77ae838f0adfe3a2cc46df371f3d51ff41ea205e Mon Sep 17 00:00:00 2001 From: JackLee_CN <809262979@qq.com> Date: Tue, 15 Oct 2024 18:50:14 +0800 Subject: [PATCH] =?UTF-8?q?=E8=B0=83=E6=95=B4UI=EF=BC=8C=E8=B0=83=E6=95=B4?= =?UTF-8?q?=E7=BC=96=E8=AF=91EXE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CMakeLists.txt | 33 +++++++++++++++++++++++++++++++++ src/xsteam_ui.cpp | 4 ++-- 2 files changed, 35 insertions(+), 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index a2f575f..4092e7b 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -44,6 +44,7 @@ endif() #设置QT .cmake文件路径 #自编译QT静态库 SET(QT_DIR "D:/Dev/Qt/6.8.0/mingw1310_static_x64/lib/cmake") + SET(JSON ${PROJECT_SOURCE_DIR}/3rdparty/json) LIST(APPEND CMAKE_PREFIX_PATH ${QT_DIR} ${MSYS}) @@ -115,6 +116,38 @@ QT6_ADD_RESOURCES(RCFILES res.qrc) #WIN32 add_executable(${PROJECT_NAME} WIN32 ${PROJECT_SOURCES} ${RCFILES} xsteam.rc) +#安全编译 +#关闭RPATH特性 +SET(CMAKE_SKIP_RPATH TRUE) +#开启栈保护 +SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fstack-protector-strong") +#开启GOT表保护 +SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,-z,relro,-z,now") +SET(CMAKE_EXECUTABLE_LINKER_FLAGS "${CMAKE_EXECUTABLE_LINKER_FLAGS} -Wl,-z,relro,-z,now") +#开启栈不可执行 +SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,-z,noexecstack") +SET(CMAKE_EXECUTABLE_LINKER_FLAGS "${CMAKE_EXECUTABLE_LINKER_FLAGS} -Wl,-z,noexecstack") +#开启地址无关 +SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fpic") +#随机化 +SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fpie") +SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -pie") +SET(CMAKE_EXECUTABLE_LINKER_FLAGS "${CMAKE_EXECUTABLE_LINKER_FLAGS} -pie") +#隐藏暴露的符号 +SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -fvisibility=hidden") +SET(CMAKE_EXECUTABLE_LINKER_FLAGS "${CMAKE_EXECUTABLE_LINKER_FLAGS} -fvisibility=hidden") +SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -fvisibility-inlines-hidden") +SET(CMAKE_EXECUTABLE_LINKER_FLAGS "${CMAKE_EXECUTABLE_LINKER_FLAGS} -fvisibility-inlines-hidden") +#删除调试符号 +SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -s") +SET(CMAKE_EXECUTABLE_LINKER_FLAGS "${CMAKE_EXECUTABLE_LINKER_FLAGS} -s") +#删除生成EXE符号信息 +SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -s") +#开启整数溢出检查 +SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS} -ftrapv") +#开启栈检查 +SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS} -fstack-check") + #忽略多重定引用 target_link_options(${PROJECT_NAME} PUBLIC -Wl,--allow-multiple-definition) # 设置链接标志为静态链接 diff --git a/src/xsteam_ui.cpp b/src/xsteam_ui.cpp index a830c93..24fd917 100644 --- a/src/xsteam_ui.cpp +++ b/src/xsteam_ui.cpp @@ -133,8 +133,8 @@ void xsteam_ui::xsteam_init_mind_layout() ip_data_layout->addWidget(ip_uid_group); ip_data_layout->addWidget(ip_all_dlc_group); - ip_data_layout->setStretch(0, 7); - ip_data_layout->setStretch(1, 3); + ip_data_layout->setStretch(0, 8); + ip_data_layout->setStretch(1, 2); mind_layout->addLayout(server_layout); mind_layout->addLayout(ip_data_layout);