From 5c4c27c4b673a15d3db53de4e94ea84d06c2fea1 Mon Sep 17 00:00:00 2001 From: GoldBro233 Date: Tue, 6 May 2025 15:21:58 +0800 Subject: [PATCH] Fix Bugs: Update CMakeLists.txt to adapt different platforms --- CMakeLists.txt | 24 ++++++++++++++++++++---- 1 file changed, 20 insertions(+), 4 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index c9549e5..ca2a049 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,7 +1,23 @@ cmake_minimum_required(VERSION 3.31) -project (course_design) -set (CMAKE_CXX_STANDARD 17) +project(course_design) + +# 设置C++标准为17,并要求遵守该标准 +set(CMAKE_CXX_STANDARD 17) +set(CMAKE_CXX_STANDARD_REQUIRED ON) + +# 寻找SQLite3库 find_package(SQLite3 REQUIRED) -add_executable(coursedesign main.cpp userAuth.cpp userAuth.h data.cpp data.h tools.cpp tools.h render_ui.cpp render_ui.h) -target_link_libraries(coursedesign PRIVATE SQLite::SQLite3) \ No newline at end of file +# 公共源文件 +set(SOURCES main.cpp userAuth.cpp data.cpp tools.cpp render_ui.cpp) + +# 创建GBK编码的可执行文件 +add_executable(coursedesign_gbk ${SOURCES}) +target_compile_options(coursedesign_gbk PRIVATE -fexec-charset=gbk) +target_link_libraries(coursedesign_gbk PRIVATE SQLite::SQLite3) +set_target_properties(coursedesign_gbk PROPERTIES LINK_FLAGS "-static") + +# 创建UTF-8编码的可执行文件 +add_executable(coursedesign_utf8 ${SOURCES}) +target_link_libraries(coursedesign_utf8 PRIVATE SQLite::SQLite3) +set_target_properties(coursedesign_utf8 PROPERTIES LINK_FLAGS "-static") \ No newline at end of file