162 lines
5.7 KiB
Prolog
162 lines
5.7 KiB
Prolog
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-definition:libavcodec 和 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
|