配置文件丢这里,后面有空整理下。
说下大概的注意点,
安装路径(qtcreator远程部署的路径)、
动态库路径和头文件路径、
运行时动态库路径和头文件路径($$pwd在编译后会被换成绝对路径,因此需要指定运行时动态库路径)
bash
# 指定使用的 Qt 模块
QT += core gui widgets
# 配置选项
CONFIG += c++11
# 警告和弃用 API
DEFINES += QT_DEPRECATED_WARNINGS
# 如果需要禁用已弃用的 API,取消以下注释
# DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000
# 源文件和头文件
SOURCES += \
HikvisionCamera.cpp \
VideoPlayer.cpp \
main.cpp \
mainwindow.cpp
HEADERS += \
HikvisionCamera.h \
VideoPlayer.h \
mainwindow.h
FORMS += mainwindow.ui
# 翻译文件
TRANSLATIONS += RemoteControl_zh_CN.ts
# 安装路径配置
target.path = /home/lckfb/work/RemoteControlDemo/build-RemoteControl-ARM_kits-Debug
INSTALLS += target
# 动态库路径和头文件路径
INCLUDEPATH += $$PWD/../lib/MakeAll $$PWD/../lib/incCn
DEPENDPATH += $$PWD/../lib/MakeAll
## 确保包含路径中包含 sysroot 的 include 目录
INCLUDEPATH += $$PWD/../../sysroot/usr/include
## 确保依赖路径中包含 sysroot 的 include 目录
DEPENDPATH += $$PWD/../../sysroot/usr/include
# 自定义库路径
LIBS += -L$$PWD/../lib/MakeAll -lSuperRender
LIBS += -L$$PWD/../../sysroot/usr/lib/aarch64-linux-gnu \
-lPlayCtrl \
-lssl \
-lhcnetsdk -lz -lhpr -lHCCore -lcrypto -lAudioRender
LIBS += -L$$PWD/../lib/MakeAll/HCNetSDKCom \
-lHCPreview \
-lHCPlayBack \
-lHCDisplay \
-lSystemTransform \
-lHCGeneralCfgMgr
# 交叉编译配置
QMAKE_CXX = aarch64-linux-gnu-g++
QMAKE_CC = aarch64-linux-gnu-gcc
QMAKE_LINK = aarch64-linux-gnu-g++
# 指定 sysroot 目录
QMAKE_CFLAGS += --sysroot=$$PWD/../../sysroot
QMAKE_CXXFLAGS += --sysroot=$$PWD/../../sysroot
QMAKE_LFLAGS += --sysroot=$$PWD/../../sysroot -Wl,-rpath-link=$$PWD/../../sysroot/usr/lib/aarch64-linux-gnu
# 添加开发板运行时库路径(rpath)
QMAKE_LFLAGS += -Wl,-rpath,/home/lckfb/work/RemoteControlDemo/lib/MakeAll \
-Wl,-rpath,/home/lckfb/work/RemoteControlDemo/lib/MakeAll/HCNetSDKCom