Skip to content

Commit f3a288f

Browse files
committed
Fix QAtomicInteger<quint64> compile error in win32 platform
1 parent 07a62e3 commit f3a288f

File tree

3 files changed

+21
-5
lines changed

3 files changed

+21
-5
lines changed

.github/workflows/build.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -164,7 +164,7 @@ jobs:
164164
echo "|Windows xp SP3| |[EXE](https://github.com/KangLin/SerialPortAssistant/releases/download/${BRANCH_NAME}/SerialPortAssistant_v${{env.SerialPortAssistant_VERSION}}_windows_xp_x86_Setup.exe)||||" >> ${{github.workspace}}/Release.md
165165
echo "|Android|[APK](https://github.com/KangLin/SerialPortAssistant/releases/download/${BRANCH_NAME}/SerialPortAssistant_v${{env.SerialPortAssistant_VERSION}}_android_x86_64_qt6.9.2_Release.apk) | |[APK](https://github.com/KangLin/SerialPortAssistant/releases/download/${BRANCH_NAME}/SerialPortAssistant_v${{env.SerialPortAssistant_VERSION}}_android_arm64_v8a_qt6.9.2_Release.apk)| |Experiment|" >> ${{github.workspace}}/Release.md
166166
echo "|Macos|[App zip](https://github.com/KangLin/SerialPortAssistant/releases/download/${BRANCH_NAME}/SerialPortAssistant_v${{env.SerialPortAssistant_VERSION}}_macos-15-intel.zip) [dmg](https://github.com/KangLin/SerialPortAssistant/releases/download/${BRANCH_NAME}/SerialPortAssistant_v${{env.SerialPortAssistant_VERSION}}_macos-15-intel.dmg)||[App zip](https://github.com/KangLin/SerialPortAssistant/releases/download/${BRANCH_NAME}/SerialPortAssistant_v${{env.SerialPortAssistant_VERSION}}_macos-14.zip) [dmg](https://github.com/KangLin/SerialPortAssistant/releases/download/${BRANCH_NAME}/SerialPortAssistant_v${{env.SerialPortAssistant_VERSION}}_macos-14.dmg)||Experiment|" >> ${{github.workspace}}/Release.md
167-
echo "|Linux|[AppImage](https://github.com/KangLin/SerialPortAssistant/releases/download/${BRANCH_NAME}/SerialPortAssistant_v${{env.SerialPortAssistant_VERSION}}_Linux_x86_64.AppImage)| |[AppImage](https://github.com/KangLin/SerialPortAssistant/releases/download/${BRANCH_NAME}/SerialPortAssistant_v${{env.SerialPortAssistant_VERSION}}_Linux_aarch64.AppImage)| |unzip zip file. than run `install.sh` install desktop shotcuts, or run SerialPortAssistant_*.AppImage |" >> ${{github.workspace}}/Release.md
167+
echo "|Linux|[AppImage](https://github.com/KangLin/SerialPortAssistant/releases/download/${BRANCH_NAME}/SerialPortAssistant_v${{env.SerialPortAssistant_VERSION}}_Linux_x86_64.AppImage)| |[AppImage](https://github.com/KangLin/SerialPortAssistant/releases/download/${BRANCH_NAME}/SerialPortAssistant_v${{env.SerialPortAssistant_VERSION}}_Linux_aarch64.AppImage)| |Run SerialPortAssistant_*.AppImage |" >> ${{github.workspace}}/Release.md
168168
echo "|Ubuntu 24.04|[DEB](https://github.com/KangLin/SerialPortAssistant/releases/download/${BRANCH_NAME}/SerialPortAssistant_${{env.SerialPortAssistant_VERSION}}_ubuntu-24.04_amd64.deb)| |[DEB](https://github.com/KangLin/SerialPortAssistant/releases/download/${BRANCH_NAME}/SerialPortAssistant_${{env.SerialPortAssistant_VERSION}}_ubuntu-24.04_arm64.deb)| |sudo apt install \"deb file\" |" >> ${{github.workspace}}/Release.md
169169
echo "|Ubuntu 22.04|| |[DEB](https://github.com/KangLin/SerialPortAssistant/releases/download/${BRANCH_NAME}/SerialPortAssistant_${{env.SerialPortAssistant_VERSION}}_ubuntu-22.04_arm64.deb)| |sudo apt install \"deb file\" |" >> ${{github.workspace}}/Release.md
170170
echo "|Fedora 42|[RPM](https://github.com/KangLin/SerialPortAssistant/releases/download/${BRANCH_NAME}/SerialPortAssistant-${{env.SerialPortAssistant_VERSION}}-1.fc42.x86_64.rpm)| |[RPM](https://github.com/KangLin/SerialPortAssistant/releases/download/${BRANCH_NAME}/SerialPortAssistant-${{env.SerialPortAssistant_VERSION}}-1.fc42.aarch64.rpm)| |sudo dnf install \"rpm file\" |" >> ${{github.workspace}}/Release.md

App/CMakeLists.txt

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,15 @@
22

33
project(SerialPortAssistant)
44

5+
if(CMAKE_SIZEOF_VOID_P EQUAL 4)
6+
# 32 位系统
7+
#add_definitions(QT_NO_64BIT_ATOMICS)
8+
set(SerialPortAssistant_DEFINED QT_NO_64BIT_ATOMICS)
9+
message(STATUS "Building for 32-bit, disabling 64-bit atomics")
10+
else()
11+
message(STATUS "Building for 64-bit")
12+
endif()
13+
514
set(HEADER_FILES
615
MainWindow.h
716
Global/Global.h
@@ -65,7 +74,7 @@ ADD_TARGET(NAME ${PROJECT_NAME}
6574
PRIVATE_LIBS RabbitCommon ${QT_LIBRARIES}
6675
PRIVATE_DEFINITIONS SerialPortAssistant_VERSION="${SerialPortAssistant_VERSION}"
6776
SerialPortAssistant_Revision="${SerialPortAssistant_Revision}"
68-
RABBITCOMMON
77+
RABBITCOMMON ${SerialPortAssistant_DEFINED}
6978
VERSION ${SerialPortAssistant_VERSION}
7079
)
7180

App/Stats.h

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -60,15 +60,22 @@ public Q_SLOTS:
6060
void sigCalculationComplete();
6161

6262
private:
63+
#if QT_NO_64BIT_ATOMICS
64+
QAtomicInteger<quint32> m_TotalSends;
65+
QAtomicInteger<quint32> m_TotalReceives;
66+
QAtomicInteger<quint32> m_lastSends;
67+
QAtomicInteger<quint32> m_lastReceives;
68+
#else
6369
QAtomicInteger<quint64> m_TotalSends;
6470
QAtomicInteger<quint64> m_TotalReceives;
65-
66-
QDateTime m_lastTime;
6771
QAtomicInteger<quint64> m_lastSends;
6872
QAtomicInteger<quint64> m_lastReceives;
73+
#endif
74+
75+
QDateTime m_lastTime;
6976
double m_dbSendRate;
7077
double m_dbReceiveRate;
71-
78+
7279
int m_tmInterval;
7380
QTimer m_Timer;
7481
};

0 commit comments

Comments
 (0)