From 50b6a5daea4bd1ec742cd13a04f9b223706c948a Mon Sep 17 00:00:00 2001 From: impressionyang Date: Wed, 13 May 2026 17:16:24 +0800 Subject: [PATCH] =?UTF-8?q?chore:=20=E8=BF=81=E7=A7=BB=20Qt6=20=E5=88=B0?= =?UTF-8?q?=20Qt5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - find_package(Qt6 ...) -> find_package(Qt5 ...) - 移除 qt_standard_project_setup() (Qt5 无此函数) - qt_add_resources -> qt5_add_resources + .qrc 资源文件 - QTextStream::setEncoding(QStringConverter::Utf8) -> setCodec("UTF-8") (3 个 tokenizer 文件 + logger.cpp) - 更新 tests/CMakeLists.txt 使用 Qt5::Core Co-Authored-By: Claude Opus 4.6 --- CMakeLists.txt | 32 +++++++++++++----------------- src/core/sense_voice_tokenizer.cpp | 2 +- src/core/tokenizer.cpp | 2 +- src/core/whisper_tokenizer.cpp | 2 +- src/ui/resources/styles.qrc | 6 ++++++ src/utils/logger.cpp | 2 +- tests/CMakeLists.txt | 2 +- 7 files changed, 25 insertions(+), 23 deletions(-) create mode 100644 src/ui/resources/styles.qrc diff --git a/CMakeLists.txt b/CMakeLists.txt index 6745c89..77e5e47 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -27,18 +27,16 @@ set(CMAKE_EXPORT_COMPILE_COMMANDS ON) # ============================================================================ list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake") -# Qt 6 -find_package(Qt6 REQUIRED COMPONENTS Core Widgets Concurrent Network) +# Qt 5 +find_package(Qt5 REQUIRED COMPONENTS Core Widgets Concurrent Network) # Windows 不需要 D-Bus,Linux/macOS 按需加载 if(WIN32) - find_package(Qt6 REQUIRED COMPONENTS Gui) + find_package(Qt5 REQUIRED COMPONENTS Gui) else() - find_package(Qt6 REQUIRED COMPONENTS DBus) + find_package(Qt5 REQUIRED COMPONENTS DBus) endif() -qt_standard_project_setup() - # ONNX Runtime include(dependencies) @@ -150,12 +148,12 @@ target_include_directories(${PROJECT_NAME} PRIVATE ) target_link_libraries(${PROJECT_NAME} PRIVATE - Qt6::Core - Qt6::Widgets - Qt6::Concurrent - Qt6::Network - $<$:Qt6::Gui> - $<$>:Qt6::DBus> + Qt5::Core + Qt5::Widgets + Qt5::Concurrent + Qt5::Network + $<$:Qt5::Gui> + $<$>:Qt5::DBus> ${ONNXRUNTIME_LIBRARIES} ${PORTAUDIO_LIBRARIES} $<$>:pthread> @@ -169,12 +167,10 @@ target_compile_options(${PROJECT_NAME} PRIVATE # ============================================================================ # 资源文件 # ============================================================================ -# 样式表 -qt_add_resources(${PROJECT_NAME} "styles" - PREFIX "/" - FILES - src/ui/resources/styles/main.qss -) +# 样式表(Qt5 使用 qrc 文件) +set(RESOURCE_FILES src/ui/resources/styles.qrc) +qt5_add_resources(RESOURCE_SOURCES ${RESOURCE_FILES}) +list(APPEND SOURCES ${RESOURCE_SOURCES}) # ============================================================================ # 安装 diff --git a/src/core/sense_voice_tokenizer.cpp b/src/core/sense_voice_tokenizer.cpp index 454282c..971f43e 100644 --- a/src/core/sense_voice_tokenizer.cpp +++ b/src/core/sense_voice_tokenizer.cpp @@ -18,7 +18,7 @@ bool SenseVoiceTokenizer::load(const QString& tokensPath) { } QTextStream stream(&file); - stream.setEncoding(QStringConverter::Utf8); + stream.setCodec("UTF-8"); tokenToString_.clear(); diff --git a/src/core/tokenizer.cpp b/src/core/tokenizer.cpp index a8aea97..4413e00 100644 --- a/src/core/tokenizer.cpp +++ b/src/core/tokenizer.cpp @@ -17,7 +17,7 @@ bool Tokenizer::loadVocabulary(const QString& vocabPath) { } QTextStream stream(&file); - stream.setEncoding(QStringConverter::Utf8); + stream.setCodec("UTF-8"); vocabulary_.clear(); while (!stream.atEnd()) { diff --git a/src/core/whisper_tokenizer.cpp b/src/core/whisper_tokenizer.cpp index 6953a01..0fa8d03 100644 --- a/src/core/whisper_tokenizer.cpp +++ b/src/core/whisper_tokenizer.cpp @@ -17,7 +17,7 @@ bool WhisperTokenizer::loadVocabulary(const QString& vocabPath) { } QTextStream stream(&file); - stream.setEncoding(QStringConverter::Utf8); + stream.setCodec("UTF-8"); tokenToString_.clear(); stringToToken_.clear(); diff --git a/src/ui/resources/styles.qrc b/src/ui/resources/styles.qrc new file mode 100644 index 0000000..08c1074 --- /dev/null +++ b/src/ui/resources/styles.qrc @@ -0,0 +1,6 @@ + + + + styles/main.qss + + diff --git a/src/utils/logger.cpp b/src/utils/logger.cpp index 67451a8..60e5d08 100644 --- a/src/utils/logger.cpp +++ b/src/utils/logger.cpp @@ -118,7 +118,7 @@ QString Logger::getTimestamp() { void Logger::writeToFile(const QString& line) { if (logFile_ && logFile_->isOpen()) { QTextStream stream(logFile_); - stream.setEncoding(QStringConverter::Utf8); + stream.setCodec("UTF-8"); stream << line << Qt::endl; logFile_->flush(); } diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index bde555c..4797086 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -36,7 +36,7 @@ target_include_directories(tests PRIVATE target_link_libraries(tests PRIVATE Catch2::Catch2WithMain - Qt6::Core + Qt5::Core pthread )