168 lines
6.5 KiB
Prolog
Raw Permalink Normal View History

QT += core
2026-06-26 17:55:15 +08:00
QT += network
QT += gui
QT += xml
TEMPLATE = app
TARGET = DroneScrewServer
CONFIG += c++17 console
CONFIG -= app_bundle
# UTF-8 缂栫爜
2026-06-26 17:55:15 +08:00
win32-msvc {
QMAKE_CXXFLAGS += /utf-8
}
DEFINES += QT_DEPRECATED_WARNINGS
# 澶存枃浠惰矾寰?
2026-06-26 17:55:15 +08:00
INCLUDEPATH += $$PWD/../../../Utils/VrCommon/Inc
INCLUDEPATH += $$PWD/../../../Utils/VrUtils/Inc
INCLUDEPATH += $$PWD/../../../AppUtils/AppCommon/Inc
INCLUDEPATH += $$PWD/../../../AppUtils/AppConfig/Inc
# 璁惧锛歁vsDevice
2026-06-26 17:55:15 +08:00
INCLUDEPATH += $$PWD/../../../Device/MvsDevice/Inc
# 潡锛歓eroMQ Server + PubSub + FFMediaStream + WDRemoteReceiver(澶村鐢?
2026-07-14 17:14:55 +08:00
INCLUDEPATH += $$PWD/../../../Nets/ZeroMQServer/Inc
INCLUDEPATH += $$PWD/../../../Nets/ZeroMQPubSub/Inc
2026-06-26 17:55:15 +08:00
INCLUDEPATH += $$PWD/../../../Module/FFMediaStream/Inc
INCLUDEPATH += $$PWD/../../../Module/WDRemoteReceiver/Inc
INCLUDEPATH += $$PWD/../../../Module/AuthModule/Inc
# Protobuf / ZeroMQ ?
2026-06-26 17:55:15 +08:00
INCLUDEPATH += $$PWD/../../../SDK/Protobuf_3_20/include
2026-07-14 17:14:55 +08:00
INCLUDEPATH += $$PWD/../../../Nets/SDK/ZeroMQ/include
2026-06-26 17:55:15 +08:00
# MPP headers
INCLUDEPATH += $$PWD/../../../Module/SDK/mpp/include
INCLUDEPATH += $$PWD/../../../Module/SDK/mpp/include/rockchip
2026-06-26 17:55:15 +08:00
# 绠楁硶鍗犱綅鎺ュ彛
2026-06-26 17:55:15 +08:00
INCLUDEPATH += $$PWD/Algo
INCLUDEPATH += $$PWD/../../../AppAlgo/stereo_bolt_delivery/include
SOURCES += \
main.cpp \
DroneScrewServerPresenter.cpp \
DroneScrewZmqProtocol.cpp \
MjpegEncoder.cpp \
2026-06-26 17:55:15 +08:00
Algo/DroneScrewAlgoStub.cpp
HEADERS += \
DroneScrewServerPresenter.h \
DroneScrewZmqProtocol.h \
MjpegEncoder.h \
2026-06-26 17:55:15 +08:00
Version.h \
Algo/IDroneScrewAlgo.h \
Algo/DroneScrewAlgoStub.h
# ====== Windows 閾炬帴 ======
2026-06-26 17:55:15 +08:00
win32:CONFIG(debug, debug|release) {
LIBS += -L../../../Device/MvsDevice/debug -lMvsDevice
LIBS += -L../../../Module/FFMediaStream/debug -lFFMediaStream
2026-07-14 17:14:55 +08:00
LIBS += -L../../../Nets/debug -lZeroMQServer
LIBS += -L../../../Nets/debug -lZeroMQPubSub
2026-06-26 17:55:15 +08:00
LIBS += -L../../../Module/AuthModule/debug -lAuthModule
LIBS += -L../../../Utils/VrUtils/debug -lVrUtils
LIBS += -L../../../AppUtils/AppCommon/debug -lAppCommon
LIBS += -L../../../AppUtils/AppConfig/debug -lAppConfig
2026-07-14 17:14:55 +08:00
LIBS += -L../../../Nets/debug -lModbusTCPServer
2026-06-26 17:55:15 +08:00
LIBS += -L../../../Module/ShareMem/debug -lShareMem
2026-07-14 17:14:55 +08:00
LIBS += -L../../../Nets/debug -lVrModbus
2026-06-26 17:55:15 +08:00
}else:win32:CONFIG(release, debug|release){
LIBS += -L../../../Device/MvsDevice/release -lMvsDevice
LIBS += -L../../../Module/FFMediaStream/release -lFFMediaStream
2026-07-14 17:14:55 +08:00
LIBS += -L../../../Nets/release -lZeroMQServer
LIBS += -L../../../Nets/release -lZeroMQPubSub
2026-06-26 17:55:15 +08:00
LIBS += -L../../../Module/AuthModule/release -lAuthModule
LIBS += -L../../../Utils/VrUtils/release -lVrUtils
LIBS += -L../../../AppUtils/AppCommon/release -lAppCommon
LIBS += -L../../../AppUtils/AppConfig/release -lAppConfig
2026-07-14 17:14:55 +08:00
LIBS += -L../../../Nets/release -lModbusTCPServer
2026-06-26 17:55:15 +08:00
LIBS += -L../../../Module/ShareMem/release -lShareMem
2026-07-14 17:14:55 +08:00
LIBS += -L../../../Nets/release -lVrModbus
2026-06-26 17:55:15 +08:00
}else:unix:!macx {
# ====== Linux/ARM 閾炬帴 ======
2026-06-26 17:55:15 +08:00
LIBS += -L../../../Device/MvsDevice -lMvsDevice
LIBS += -L../../../Module/FFMediaStream -lFFMediaStream
2026-07-14 17:14:55 +08:00
LIBS += -L../../../Nets -lZeroMQServer
LIBS += -L../../../Nets -lZeroMQPubSub
2026-06-26 17:55:15 +08:00
LIBS += -L../../../Module/AuthModule -lAuthModule
LIBS += -L../../../AppUtils/AppCommon -lAppCommon
LIBS += -L../../../AppUtils/AppConfig -lAppConfig
2026-07-14 17:14:55 +08:00
LIBS += -L../../../Nets -lModbusTCPServer
2026-06-26 17:55:15 +08:00
LIBS += -L../../../Module/ShareMem -lShareMem
2026-07-14 17:14:55 +08:00
LIBS += -L../../../Nets -lVrModbus
2026-06-26 17:55:15 +08:00
LIBS += -L../../../Utils/VrUtils -lVrUtils
DEFINES += DRONESCREW_STEREO_BOLT_DIRECT_LINK
LIBS += -L$$PWD/../../../AppAlgo/stereo_bolt_delivery/lib -lstereo_bolt
OPENCV450_LIB_DIR = $$PWD/../../../SDK/OpenCV450/Arm/aarch64/lib
INCLUDEPATH += $$PWD/../../../SDK/OpenCV450/Arm/aarch64/include/opencv4
2026-06-26 17:55:15 +08:00
LIBS += -L$${OPENCV450_LIB_DIR}
2026-07-01 18:16:18 +08:00
LIBS += -lopencv_imgcodecs -lopencv_imgproc -lopencv_calib3d -lopencv_core
2026-06-26 17:55:15 +08:00
QMAKE_LFLAGS += -Wl,-rpath-link,$${OPENCV450_LIB_DIR}
# MVS SDK
LIBS += -L$$PWD/../../../Device/SDK/MVS/MVS_STD_V3.0.1_251113/MVS-3.0.1_aarch64_20251113/lib/aarch64
2026-06-26 17:55:15 +08:00
LIBS += -lMvCameraControl
# 绯荤粺搴擄紙鏉垮瓙鑷甫锛?
2026-06-26 17:55:15 +08:00
LIBS += -lrga
# MPP 鍔ㄦ佸簱 + FFmpeg 闈欐佸簱鎼滅储璺緞
MPP_LIB_DIR = $$PWD/../../../Module/SDK/mpp/lib
FFMPEG_LIB_DIR = $$PWD/../../../Module/SDK/ffmpeg-rockchip/lib
2026-06-26 17:55:15 +08:00
LIBS += -L$${MPP_LIB_DIR}
LIBS += -L$${FFMPEG_LIB_DIR}
# FFmpeg-rockchip 闈欐佸簱
# --whole-archive锛氳В?.a 闂村惊鐜緷璧?+ ff_log_level 绛夊唴閮ㄧ鍙?
# --allow-multiple-definition锛歭ibavcodec ?libswscale 閮界紪璇戜簡 half2float.o锛堥噸澶嶄絾瀹屽叏鐩稿悓锛?
2026-06-26 17:55:15 +08:00
LIBS += -Wl,--whole-archive
LIBS += -lavformat -lavcodec -lswscale -lavutil -lswresample
LIBS += -Wl,--no-whole-archive
LIBS += -Wl,--allow-multiple-definition
# FFmpeg / MPP 浼犻掍緷璧?
2026-06-26 17:55:15 +08:00
LIBS += -lrockchip_mpp -lz -llzma -ldrm -lpthread -ldl
# ZeroMQ / Protobuf
2026-07-14 17:14:55 +08:00
LIBS += -L$$PWD/../../../Nets/SDK/ZeroMQ/Arm/aarch64 -lzmq
2026-06-26 17:55:15 +08:00
LIBS += -L$$PWD/../../../SDK/Protobuf_3_20/Arm/aarch64 -lprotobuf
LIBS += -lpthread -ldl
# 鍏佽鏈畾涔夌鍙凤紙杩愯鏃剁敱绯荤粺搴撴彁渚涳級
2026-06-26 17:55:15 +08:00
QMAKE_LFLAGS += -Wl,--allow-shlib-undefined
}
# Windows 绯荤粺搴?
2026-06-26 17:55:15 +08:00
win32 {
LIBS += -lws2_32
LIBS += Shell32.lib
# MVS SDK锛圡vsDevice 鏄潤鎬佸簱锛孡IBS 涓嶄細浼犻掞紝闇瑕佽繖閲屽啀閾句竴娆
# 鍏ㄩ儴浠庝粨搴撳唴 SDK 鍙栵紝涓嶄緷璧栫郴缁熷畨瑁?
LIBS += -L$$PWD/../../../Device/SDK/MVS/MVS_Win_STD_5.0.0_260417/Development/Libraries/win64 -lMvCameraControl
2026-06-26 17:55:15 +08:00
# ZeroMQ
CONFIG(release, debug|release): {
2026-07-14 17:14:55 +08:00
LIBS += -L$$PWD/../../../Nets/SDK/ZeroMQ/Windows/x64/Release -llibzmq-v142-mt-4_3_5
2026-06-26 17:55:15 +08:00
LIBS += -L$$PWD/../../../SDK/Protobuf_3_20/Windows/x64/Release -llibprotobuf
} else {
2026-07-14 17:14:55 +08:00
LIBS += -L$$PWD/../../../Nets/SDK/ZeroMQ/Windows/x64/Debug -llibzmq-v142-mt-gd-4_3_5
2026-06-26 17:55:15 +08:00
LIBS += -L$$PWD/../../../SDK/Protobuf_3_20/Windows/x64/Debug -llibprotobuf
}
}
unix {
target.path = /opt/dronescrewserver
LIBS += -lrt
}
!isEmpty(target.path): INSTALLS += target