2026-06-26 17:55:15 +08:00

162 lines
5.7 KiB
Prolog
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

QT += core gui network widgets
CONFIG += c++17
TARGET = DroneScrewCtrlApp
TEMPLATE = app
DEFINES += QT_DEPRECATED_WARNINGS
DEFINES += UNICODE
DEFINES += _UNICODE
win32-msvc {
QMAKE_CXXFLAGS += /utf-8
}
# 头文件路径
INCLUDEPATH += $$PWD/Presenter/Inc
INCLUDEPATH += $$PWD/../DroneScrewCtrlConfig/Inc
INCLUDEPATH += $$PWD/../../../Utils/VrCommon/Inc
INCLUDEPATH += $$PWD/../../../Utils/VrUtils/Inc
INCLUDEPATH += $$PWD/../../../Module/ShareMem/Inc
INCLUDEPATH += $$PWD/../../../Module/ZeroMQClient/Inc
INCLUDEPATH += $$PWD/../../../Module/ZeroMQPubSub/Inc
INCLUDEPATH += $$PWD/../../../Module/FFMediaStream/Inc
INCLUDEPATH += $$PWD/../../../Module/AuthModule/Inc
INCLUDEPATH += $$PWD/../../../Module/WDRemoteReceiver/Inc
INCLUDEPATH += $$PWD/../../../AppUtils/AppCommon/Inc
INCLUDEPATH += $$PWD/../../../AppUtils/AppConfig/Inc
INCLUDEPATH += $$PWD/../../../AppUtils/UICommon/Inc
# Protobuf / ZeroMQ
INCLUDEPATH += $$PWD/../../../SDK/Protobuf_3_20/include
INCLUDEPATH += $$PWD/../../../SDK/ZeroMQ/include
# 源文件
SOURCES += \
main.cpp \
mainwindow.cpp \
dialogalgoarg.cpp \
dialogcamerasetting.cpp \
resultitem.cpp \
Presenter/Src/ConfigManager.cpp \
Presenter/Src/DroneScrewCtrlPresenter.cpp
HEADERS += \
mainwindow.h \
dialogalgoarg.h \
dialogcamerasetting.h \
resultitem.h \
Version.h \
IYDroneScrewCtrlStatus.h \
Presenter/Inc/ConfigManager.h \
Presenter/Inc/DroneScrewCtrlPresenter.h
FORMS += \
mainwindow.ui \
dialogalgoarg.ui \
dialogcamerasetting.ui \
resultitem.ui
RESOURCES += \
../../../AppUtils/UICommon/common_resources.qrc \
resources.qrc
# Windows 任务栏 / exe 图标
win32 {
RC_ICONS = resource/logo.ico
}
# 链接
win32:CONFIG(debug, debug|release) {
LIBS += -L../../../Utils/VrUtils/debug -lVrUtils
LIBS += -L../../../AppUtils/UICommon/debug -lUICommon
LIBS += -L../../../AppUtils/AppCommon/debug -lAppCommon
LIBS += -L../../../AppUtils/AppConfig/debug -lAppConfig
LIBS += -L../../../Module/AuthModule/debug -lAuthModule
LIBS += -L../../../Module/ZeroMQClient/debug -lZeroMQClient
LIBS += -L../../../Module/ZeroMQPubSub/debug -lZeroMQPubSub
LIBS += -L../../../Module/FFMediaStream/debug -lFFMediaStream
LIBS += -L../../../Module/ShareMem/debug -lShareMem
LIBS += -L../../../Module/WDRemoteReceiver/debug -lWDRemoteReceiver
LIBS += -L../DroneScrewCtrlConfig/debug -lDroneScrewCtrlConfig
}else:win32:CONFIG(release, debug|release){
LIBS += -L../../../Utils/VrUtils/release -lVrUtils
LIBS += -L../../../AppUtils/UICommon/release -lUICommon
LIBS += -L../../../AppUtils/AppCommon/release -lAppCommon
LIBS += -L../../../AppUtils/AppConfig/release -lAppConfig
LIBS += -L../../../Module/AuthModule/release -lAuthModule
LIBS += -L../../../Module/ZeroMQClient/release -lZeroMQClient
LIBS += -L../../../Module/ZeroMQPubSub/release -lZeroMQPubSub
LIBS += -L../../../Module/FFMediaStream/release -lFFMediaStream
LIBS += -L../../../Module/ShareMem/release -lShareMem
LIBS += -L../../../Module/WDRemoteReceiver/release -lWDRemoteReceiver
LIBS += -L../DroneScrewCtrlConfig/release -lDroneScrewCtrlConfig
}else:unix:!macx {
LIBS += -L../DroneScrewCtrlConfig -lDroneScrewCtrlConfig
LIBS += -L../../../AppUtils/UICommon -lUICommon
LIBS += -L../../../AppUtils/AppCommon -lAppCommon
LIBS += -L../../../AppUtils/AppConfig -lAppConfig
LIBS += -L../../../Module/AuthModule -lAuthModule
LIBS += -L../../../Module/ZeroMQClient -lZeroMQClient
LIBS += -L../../../Module/ZeroMQPubSub -lZeroMQPubSub
LIBS += -L../../../Module/FFMediaStream -lFFMediaStream
LIBS += -L../../../Module/ShareMem -lShareMem
LIBS += -L../../../Module/WDRemoteReceiver -lWDRemoteReceiver
LIBS += -L../../../Utils/VrUtils -lVrUtils
# 系统库(板子自带)
LIBS += -lrga
# MPP 动态库 + FFmpeg 静态库搜索路径
MPP_LIB_DIR = $$PWD/../../../SDK/mpp/lib
FFMPEG_LIB_DIR = $$PWD/../../../SDK/ffmpeg-rockchip/lib
LIBS += -L$${MPP_LIB_DIR}
LIBS += -L$${FFMPEG_LIB_DIR}
# FFmpeg-rockchip 静态库
# --whole-archive解决 .a 间循环依赖 + ff_log_level 等内部符号
# --allow-multiple-definitionlibavcodec libswscale 都编译了 half2float.o重复但完全相同
LIBS += -Wl,--whole-archive
LIBS += -lavformat -lavcodec -lswscale -lavutil -lswresample
LIBS += -Wl,--no-whole-archive
LIBS += -Wl,--allow-multiple-definition
# FFmpeg / MPP 传递依赖
LIBS += -lrockchip_mpp -lz -llzma -ldrm -lpthread -ldl
# ZeroMQ
LIBS += -L$$PWD/../../../SDK/ZeroMQ/Arm/aarch64 -lzmq
# WDRemoteReceiver uses OpenCV imgcodecs for PNG raw-image decode.
OPENCV_LIB_DIR = $$PWD/../../../SDK/OpenCV320/Arm/aarch64
LIBS += -L$${OPENCV_LIB_DIR} -lopencv_imgcodecs -lopencv_core
QMAKE_LFLAGS += -Wl,-rpath-link,$${OPENCV_LIB_DIR}
LIBS += -lpthread -ldl
}
win32 {
LIBS += -lws2_32
LIBS += Advapi32.lib
# ZeroMQ
CONFIG(release, debug|release) {
LIBS += -L$$PWD/../../../SDK/ZeroMQ/Windows/x64/Release -llibzmq-v142-mt-4_3_5
LIBS += -L$$PWD/../../../SDK/Protobuf_3_20/Windows/x64/Release -llibprotobuf
} else {
LIBS += -L$$PWD/../../../SDK/ZeroMQ/Windows/x64/Debug -llibzmq-v142-mt-gd-4_3_5
LIBS += -L$$PWD/../../../SDK/Protobuf_3_20/Windows/x64/Debug -llibprotobuf
}
}
unix {
target.path = /opt/dronescrewctrl
LIBS += -lrt
}
!isEmpty(target.path): INSTALLS += target