LearningSmartClient.pro 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178
  1. QT += core gui network svg xml
  2. QT += multimedia websockets
  3. QT += winextras
  4. greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
  5. # CONFIG += console
  6. CONFIG += c++17
  7. LIBS += -lshell32
  8. QT += opengl
  9. QT += concurrent
  10. # You can make your code fail to compile if it uses deprecated APIs.
  11. # In order to do so, uncomment the following line.
  12. #DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0
  13. SOURCES += \
  14. MainPanel.cpp \
  15. ScreenWall/main_simple.cpp \
  16. ScreenWall/screenwall_simple.cpp \
  17. ScreenWall/screenwall_widget.cpp \
  18. api/chatapi.cpp \
  19. api/loginapi.cpp \
  20. api/roomapi.cpp \
  21. api/userapi.cpp \
  22. appevent.cpp \
  23. config/networkconfig.cpp \
  24. main.cpp \
  25. mainwindow.cpp \
  26. network/networkaccessmanager.cpp \
  27. network/request.cpp \
  28. network/websocketclient.cpp \
  29. thardware/thardware.cpp \
  30. thememanager.cpp \
  31. themesettingswidget.cpp \
  32. tlogger.cpp \
  33. util/asynchelper.cpp \
  34. util/layoutbuilder.cpp \
  35. util/qformatter.cpp \
  36. utils/iconutils.cpp \
  37. views/loginwindow.cpp \
  38. widgets/bubbletip.cpp \
  39. widgets/chatView/bubblemessagemanager.cpp \
  40. widgets/chatView/chat1/chatmessagedelegate.cpp \
  41. widgets/chatView/chat1/chatmessagemodel.cpp \
  42. widgets/chatView/chat1/chatview.cpp \
  43. widgets/chatView/chatwindow.cpp \
  44. widgets/chatView/independentchatwindow.cpp \
  45. widgets/colorlistwidget.cpp \
  46. widgets/onlineuserswidget.cpp \
  47. widgets/createmeetingdialog.cpp \
  48. widgets/framelessbase.cpp \
  49. widgets/functionbutton.cpp \
  50. widgets/joinmeetingdialog.cpp \
  51. widgets/maskoverlay.cpp \
  52. widgets/meetingselectionwidget.cpp \
  53. widgets/recorderwidget.cpp \
  54. widgets/statswidget.cpp \
  55. widgets/userprofilewidget.cpp \
  56. widgets/windowpreviewwidget.cpp
  57. HEADERS += \
  58. MainPanel.h \
  59. ScreenWall/screenwall_simple.h \
  60. ScreenWall/screenwall_widget.h \
  61. api/chatapi.h \
  62. api/loginapi.h \
  63. api/roomapi.h \
  64. api/userapi.h \
  65. appevent.h \
  66. config/networkconfig.h \
  67. mainwindow.h \
  68. network/networkaccessmanager.h \
  69. network/request.h \
  70. network/websocketclient.h \
  71. thardware/thardware.h \
  72. thememanager.h \
  73. themesettingswidget.h \
  74. tlogger.h \
  75. util/asynchelper.h \
  76. util/jsonmapper.h \
  77. util/layoutbuilder.h \
  78. util/qformatter.h \
  79. utils/iconutils.h \
  80. views/loginwindow.h \
  81. widgets/bubbletip.h \
  82. widgets/chatView/bubblemessagemanager.h \
  83. widgets/chatView/chat1/chatmessage.h \
  84. widgets/chatView/chat1/chatmessagedelegate.h \
  85. widgets/chatView/chat1/chatmessagemodel.h \
  86. widgets/chatView/chat1/chatview.h \
  87. widgets/chatView/chat1/test_image_chat.h \
  88. widgets/chatView/chatwindow.h \
  89. widgets/chatView/independentchatwindow.h \
  90. widgets/colorlistwidget.h \
  91. widgets/onlineuserswidget.h \
  92. widgets/createmeetingdialog.h \
  93. widgets/framelessbase.h \
  94. widgets/functionbutton.h \
  95. widgets/joinmeetingdialog.h \
  96. widgets/maskoverlay.h \
  97. widgets/meetingselectionwidget.h \
  98. widgets/recorderwidget.h \
  99. widgets/statswidget.h \
  100. widgets/userprofilewidget.h \
  101. widgets/windowpreviewwidget.h
  102. msvc {
  103. QMAKE_CFLAGS += /utf-8
  104. QMAKE_CXXFLAGS += /utf-8
  105. }
  106. DEFINES += _SILENCE_CLANG_COROUTINE_MESSAGE
  107. include($$PWD/libs/libs.pri)
  108. # FFmpeg library configuration
  109. win32 {
  110. INCLUDEPATH += "E:/AAA/ffmpeg-7.0.2-full_build-shared/include"
  111. LIBS += -L"E:/AAA/ffmpeg-7.0.2-full_build-shared/lib"
  112. # 使用动态库的导入库(适用于MSVC)
  113. LIBS += -lavdevice
  114. LIBS += -lavfilter
  115. LIBS += -lavformat
  116. LIBS += -lavcodec
  117. LIBS += -lswresample
  118. LIBS += -lswscale
  119. LIBS += -lavutil
  120. LIBS += -lpostproc
  121. # 添加FFmpeg依赖的系统库
  122. LIBS += -lbcrypt
  123. LIBS += -lsecur32
  124. LIBS += -luser32
  125. LIBS += -lole32
  126. }
  127. win32: LIBS += -lOpenGL32
  128. LIBS += -lwinmm
  129. # For DirectX (D3D11CreateDevice)
  130. LIBS += -ld3d11
  131. # For Windows API functions (IsWindowVisible, IsIconic)
  132. LIBS += -luser32
  133. LIBS += -ldwmapi # For DwmGetWindowAttribute
  134. LIBS += -lgdi32 # For GDI functions (BitBlt, CreateCompatibleBitmap, etc.)
  135. LIBS += -lole32 # For COM/WinRT functions
  136. LIBS += -loleaut32 # For SysAllocString, SysFreeString, etc.
  137. LIBS += -lwindowsapp # For CreateDispatcherQueueController
  138. DESTDIR = $$PWD/bin
  139. CONFIG(debug, debug|release) {
  140. DESTDIR = $$PWD/bin_debug
  141. TARGET = $$join(TARGET,,,d)
  142. }
  143. # Copy FFmpeg DLLs to output directory
  144. win32 {
  145. FFMPEG_DLLS = $$files(E:/AAA/ffmpeg-7.0.2-full_build-shared/bin/*.dll)
  146. for(dll, FFMPEG_DLLS) {
  147. QMAKE_POST_LINK += $$QMAKE_COPY $$shell_path($$dll) $$shell_path($$DESTDIR) $$escape_expand(\n\t)
  148. }
  149. }
  150. # Default rules for deployment.
  151. qnx: target.path = /tmp/$${TARGET}/bin
  152. else: unix:!android: target.path = /opt/$${TARGET}/bin
  153. !isEmpty(target.path): INSTALLS += target
  154. RESOURCES += \
  155. resources/shared.qrc
  156. DISTFILES += \