修改编译脚本,改成使用系统环境变量获取QT,ISS的路径

This commit is contained in:
YangSn 2026-07-20 12:06:06 +08:00
parent 8007fa2446
commit e500907cb6
12 changed files with 86 additions and 108 deletions

2
.gitignore vendored
View File

@ -37,7 +37,7 @@ nul
*.stackdump
CLAUDE.md
.claude
.codex
.codex*
##log
**/runlog

View File

@ -17,10 +17,10 @@
| 11 | 铁路隧道槽道测量 | TunnelChannel | 1.0.0.3 |
| 12 | 螺杆定位 | ScrewPosition | 1.2.4.1 |
| 13 | 包裹拆线位置定位 | BagThreadPosition | 1.0.0.4 |
| 14 | 工件孔定位 | WorkpieceHole | 1.2.2.2 |
| 14 | 工件孔定位 | WorkpieceHole | 1.2.3.1 |
| 15 | 轮胎孔定位 | TireHolePose | 1.0.2.1 |
| 16 | 坑孔定位 | HolePitPosition | 无 |
| 17 | 钢筋焊缝定位 | RodWeldSeam | 1.0.0.2 |
| 17 | 钢筋焊缝定位 | RodWeldSeam | 1.0.0.4 |
| 18 | 无人机螺杆检测服务端 | DroneScrewServer | 1.0.1.1 |
| 19 | 无人机螺杆检测控制端 | DroneScrewCtrlApp | 1.0.1.1 |
| 20 | 砂轮盘孔定位 | DiscHolePose | 1.0.0.1 |

View File

@ -1,6 +1,10 @@
@echo off
setlocal
REM Windows packaging tool directories (system environment variables):
REM QT_PATH=D:\Qt\5.15.2
REM ISCC_PATH=C:\Program Files\Inno Setup 7
set PRJ_PATH=%~dp0
set PRJ_PATH=%PRJ_PATH:~0,-1%
@ -12,13 +16,11 @@ powershell -Command "Remove-Item * -Recurse -Force"
copy "..\..\build\Tools\AuthRegister\release\AuthRegister.exe" .\
"C:\tools\Qt\5.15.2\msvc2019_64\bin\windeployqt.exe" "AuthRegister.exe"
"%QT_PATH%\msvc2019_64\bin\windeployqt.exe" "AuthRegister.exe"
cd ..\..
set ISCC_PATH=C:\Program Files (x86)\Inno Setup 6\ISCC.exe
"%ISCC_PATH%" "AuthRegister.iss"
"%ISCC_PATH%\ISCC.exe" "AuthRegister.iss"
echo "finish"

View File

@ -1,6 +1,10 @@
@echo off
setlocal
REM Windows packaging tool directories (system environment variables):
REM QT_PATH=D:\Qt\5.15.2
REM ISCC_PATH=C:\Program Files\Inno Setup 7
set PRJ_PATH=%~dp0
set PRJ_PATH=%PRJ_PATH:~0,-1%
@ -12,14 +16,12 @@ powershell -Command "Remove-Item * -Recurse -Force"
copy "..\..\build\App\BeltTearing\BeltTearingApp\release\BeltTearingApp.exe" .\
"C:\tools\Qt\5.15.2\msvc2019_64\bin\windeployqt.exe" "BeltTearingApp.exe"
"%QT_PATH%\msvc2019_64\bin\windeployqt.exe" "BeltTearingApp.exe"
cd ..\..
set ISCC_PATH=C:\Program Files (x86)\Inno Setup 6\ISCC.exe
"%ISCC_PATH%" "BeltTearingApp.iss"
"%ISCC_PATH%\ISCC.exe" "BeltTearingApp.iss"
echo "finish"
endlocal
endlocal

View File

@ -1,6 +1,10 @@
@echo off
setlocal
REM Windows packaging tool directories (system environment variables):
REM QT_PATH=D:\Qt\5.15.2
REM ISCC_PATH=C:\Program Files\Inno Setup 7
set PRJ_PATH=%~dp0
set PRJ_PATH=%PRJ_PATH:~0,-1%
@ -10,14 +14,12 @@ cd /d "%PRJ_PATH%\buildwin\BinocularMarkTest"
copy "..\..\build\App\BinocularMark\BinocularMarkTest\release\BinocularMarkTest.exe" .\
"C:\tools\Qt\5.15.2\msvc2019_64\bin\windeployqt.exe" "BinocularMarkTest.exe"
"%QT_PATH%\msvc2019_64\bin\windeployqt.exe" "BinocularMarkTest.exe"
cd ..\..
set ISCC_PATH=C:\Program Files (x86)\Inno Setup 6\ISCC.exe
@REM "%ISCC_PATH%" "BeltTearingApp.iss"
@REM "%ISCC_PATH%\ISCC.exe" "BeltTearingApp.iss"
echo "finish"
endlocal
endlocal

View File

@ -1,6 +1,10 @@
@echo off
setlocal
REM Windows packaging tool directories (system environment variables):
REM QT_PATH=D:\Qt\5.15.2
REM ISCC_PATH=C:\Program Files\Inno Setup 7
set PRJ_PATH=%~dp0
set PRJ_PATH=%PRJ_PATH:~0,-1%
@ -13,22 +17,19 @@ powershell -Command "Remove-Item * -Recurse -Force"
copy "..\..\build\Tools\CalibView\release\CalibView.exe" .\
:: VzNLSDK DLL
copy "..\..\..\SDK\Device\VzNLSDK\Windows\x64\Release\VzKernel.dll" .\
copy "..\..\..\SDK\Device\VzNLSDK\Windows\x64\Release\VzNLDetect.dll" .\
copy "..\..\..\SDK\Device\VzNLSDK\Windows\x64\Release\VzNLGraphics.dll" .\
copy "..\..\..\SDK\Device\VzNLSDK\Windows\x64\Release\VzLog.dll" .\
copy "..\..\..\SDK\Device\VzNLSDK\Windows\x64\Release\libViEyeApi.dll" .\
copy "..\..\..\Device\SDK\VzNLSDK\Windows\x64\Release\VzKernel.dll" .\
copy "..\..\..\Device\SDK\VzNLSDK\Windows\x64\Release\VzNLDetect.dll" .\
copy "..\..\..\Device\SDK\VzNLSDK\Windows\x64\Release\VzNLGraphics.dll" .\
copy "..\..\..\Device\SDK\VzNLSDK\Windows\x64\Release\VzLog.dll" .\
:: OpenCV DLL
copy "..\..\..\SDK\OpenCV320\Windows\vc14\Release\opencv_world320.dll" .\
"C:\tools\Qt\5.15.2\msvc2019_64\bin\windeployqt.exe" "CalibView.exe"
"%QT_PATH%\msvc2019_64\bin\windeployqt.exe" "CalibView.exe"
cd ..\..
set ISCC_PATH=C:\Program Files (x86)\Inno Setup 6\ISCC.exe
"%ISCC_PATH%" "CalibView.iss"
"%ISCC_PATH%\ISCC.exe" "CalibView.iss"
echo "finish"

View File

@ -1,6 +1,10 @@
@echo off
setlocal
REM Windows packaging tool directories (system environment variables):
REM QT_PATH=D:\Qt\5.15.2
REM ISCC_PATH=C:\Program Files\Inno Setup 7
set PRJ_PATH=%~dp0
set PRJ_PATH=%PRJ_PATH:~0,-1%
@ -12,13 +16,11 @@ powershell -Command "Remove-Item * -Recurse -Force"
copy "..\..\build\Utils\CloudView\release\CloudView.exe" .\
"C:\tools\Qt\5.15.2\msvc2019_64\bin\windeployqt.exe" "CloudView.exe"
"%QT_PATH%\msvc2019_64\bin\windeployqt.exe" "CloudView.exe"
cd ..\..
set ISCC_PATH=C:\Program Files (x86)\Inno Setup 6\ISCC.exe
"%ISCC_PATH%" "CloudView.iss"
"%ISCC_PATH%\ISCC.exe" "CloudView.iss"
echo "finish"

View File

@ -1,6 +1,10 @@
@echo off
setlocal
REM Windows packaging tool directories (system environment variables):
REM QT_PATH=D:\Qt\5.15.2
REM ISCC_PATH=C:\Program Files\Inno Setup 7
set PRJ_PATH=%~dp0
set PRJ_PATH=%PRJ_PATH:~0,-1%
@ -12,13 +16,11 @@ powershell -Command "Remove-Item * -Recurse -Force"
copy "..\..\build\Tools\ControlApp\release\ControlApp.exe" .\
"C:\tools\Qt\5.15.2\msvc2019_64\bin\windeployqt.exe" "ControlApp.exe"
"%QT_PATH%\msvc2019_64\bin\windeployqt.exe" "ControlApp.exe"
cd ..\..
set ISCC_PATH=C:\Program Files (x86)\Inno Setup 6\ISCC.exe
"%ISCC_PATH%" "ControlApp.iss"
"%ISCC_PATH%\ISCC.exe" "ControlApp.iss"
echo "finish"

View File

@ -1,6 +1,10 @@
@echo off
setlocal
REM Windows packaging tool directories (system environment variables):
REM QT_PATH=D:\Qt\5.15.2
REM ISCC_PATH=C:\Program Files\Inno Setup 7
set PRJ_PATH=%~dp0
set PRJ_PATH=%PRJ_PATH:~0,-1%
@ -12,13 +16,11 @@ powershell -Command "Remove-Item * -Recurse -Force"
copy "..\..\build\App\TireHolePose\TireHolePoseApp\release\TireHolePoseApp.exe" .\
"C:\tools\Qt\5.15.2\msvc2019_64\bin\windeployqt.exe" "TireHolePoseApp.exe"
"%QT_PATH%\msvc2019_64\bin\windeployqt.exe" "TireHolePoseApp.exe"
cd ..\..
set ISCC_PATH=C:\Program Files (x86)\Inno Setup 6\ISCC.exe
"%ISCC_PATH%" "TireHolePose.iss"
"%ISCC_PATH%\ISCC.exe" "TireHolePose.iss"
echo "finish"

View File

@ -1,6 +1,10 @@
@echo off
setlocal
REM Windows packaging tool directories (system environment variables):
REM QT_PATH=D:\Qt\5.15.2
REM ISCC_PATH=C:\Program Files\Inno Setup 7
REM ============================================================
REM WDRemoteReceiver 模块测试工具 - Windows 打包脚本
REM
@ -31,10 +35,10 @@ if errorlevel 1 (
exit /b 1
)
"C:\tools\Qt\5.15.2\msvc2019_64\bin\windeployqt.exe" "WDRemoteReceiverTest.exe"
"%QT_PATH%\msvc2019_64\bin\windeployqt.exe" "WDRemoteReceiverTest.exe"
REM 3) 拷贝 ZeroMQ Runtime
copy "%PRJ_PATH%\..\SDK\ZeroMQ\Windows\x64\Release\libzmq*.dll" .\
copy "%PRJ_PATH%\..\Nets\SDK\ZeroMQ\Windows\x64\Release\libzmq*.dll" .\
REM 4) 拷贝 Protobuf Runtime如果需要
REM 5) OpenCV runtime used by WDRemoteReceiver

View File

@ -98,9 +98,13 @@ DESKTOP_PROJECTS=(
extra_copy=${COPY_ALL_BUILD_LIBS},globa|Device/SDK/HCNetSDK/Arm64/lib/*.so*|usr/lib;\
optional_copy=globa|Device/SDK/HCNetSDK/Arm64/lib/HCNetSDKCom/*.so*|usr/lib/HCNetSDKCom"
"ParkingSpaceGuide;none;\
"ParkingSpaceGuide;planeLocalization;\
opencv=opencv320;\
algo_copy=none;\
device_copy=globa|Device/SDK/MVS/MVS_STD_V3.0.1_251113/MVS-3.0.1_aarch64_20251113/lib/aarch64/*.so*|usr/lib;\
extra_copy=${COPY_ALL_BUILD_LIBS},globa|SDK/poco/Arm/aarch64/lib/libPocoNet.so*|usr/lib,globa|SDK/poco/Arm/aarch64/lib/libPocoFoundation.so*|usr/lib;\
ld_conf=/opt/rk3588-ai/lib;\
package_depends=libc6, libstdc++6;\
extra_copy=${COPY_ALL_BUILD_LIBS},globa|SDK/poco/Arm/aarch64/lib/libPocoNet.so*|usr/lib,globa|SDK/poco/Arm/aarch64/lib/libPocoFoundation.so*|usr/lib,file|AppAlgo/planeLocalization/Arm/aarch64/libplaneLocalization.so|usr/lib/libplaneLocalization.so,file|AppAlgo/planeLocalization/Arm/aarch64/libbaseAlgorithm.so|usr/lib/libbaseAlgorithm.so,file|AppAlgo/AAPGS_model/lib/libyolo_runtime.so.2|opt/rk3588-ai/lib/libyolo_runtime.so.2,file|AppAlgo/AAPGS_model/lib/libyolo_backend_cls.so|opt/rk3588-ai/lib/libyolo_backend_cls.so,file|AppAlgo/AAPGS_model/lib/librknnrt.so|opt/rk3588-ai/lib/librknnrt.so,file|AppAlgo/AAPGS_model/lib/librga.so|opt/rk3588-ai/lib/librga.so,file|AppAlgo/AAPGS_model/models/model.yaml|opt/rk3588-ai/models/model.yaml,file|AppAlgo/AAPGS_model/models/model.rknn|opt/rk3588-ai/models/model.rknn;\
optional_copy=globa|Device/SDK/MVS/MVS_STD_V3.0.1_251113/MVS-3.0.1_aarch64_20251113/lib/aarch64/ThirdParty/*.so*|usr/lib"
"WorkpiecePosition;binocularMark;\

View File

@ -6,69 +6,22 @@
```
GrabBag/
├── App/ # 应用程序目录
│ ├── GrabBag/ # 编织袋拆垛应用
│ ├── BeltTearing/ # 皮带撕裂检测应用
│ ├── LapWeld/ # 搭接焊缝检测应用
│ ├── Workpiece/ # 工件定位应用
│ ├── WorkpieceProject/ # 工件项目(定位+拼接)
│ ├── BinocularMark/ # 双目 Mark 检测应用
│ ├── ParticleSize/ # 粒度检测应用
│ ├── TunnelChannel/ # 隧道通道应用
│ └── WheelMeasure/ # 轮毂测量应用
├── AppAlgo/ # 算法库
│ ├── bagPosition/ # 编织袋定位算法
│ ├── beltTearing/ # 皮带撕裂检测算法
│ ├── binocularMark/ # 双目 Mark 检测算法
│ ├── lapWeldDetection/ # 焊缝检测算法
│ ├── particleSizeMeasure/ # 粒度测量算法
│ ├── wheelArchHeigthMeasure/ # 轮拱高度测量算法
│ └── workpieceCornerExtraction/ # 工件角点提取算法
├── AppUtils/ # 应用公共工具库
│ ├── AppCommon/ # 应用通用组件BasePresenter、单例管理等
│ ├── CloudUtils/ # 点云工具(加载、保存、绘制)
│ └── UICommon/ # UI 公共资源和组件
├── VrCommon/ # 核心接口和数据结构
├── VrUtils/ # 通用工具CRC、INI、JSON、日志、MD5
├── Nets/ # 网络通信库
│ ├── VrModbus/ # Modbus TCP 协议
│ ├── VrTcpClient/ # TCP 客户端
│ └── VrTcpServer/ # TCP 服务端
├── Device/ # 设备驱动层
│ ├── VrEyeDevice/ # VzNL 相机设备封装
│ ├── EpicEyeDevice/ # EpicEye 相机设备
│ ├── GalaxyDevice/ # 大恒相机设备
│ ├── IKapDevice/ # IKap 采集卡设备
│ └── HikDevice/ # 海康相机设备
├── Module/ # 功能模块
│ ├── ShareMem/ # 共享内存模块
│ ├── ModbusTCPServer/ # Modbus TCP 服务端
│ ├── ModbusTCPClient/ # Modbus TCP 客户端
│ ├── ThreadPool/ # 线程池
│ └── BinocularMarkReceiver/ # 双目 Mark 接收模块
├── SDK/ # 第三方 SDK
│ ├── Device/ # 相机/设备 SDK
│ │ ├── VzNLSDK/ # VzNL 激光线扫相机 SDK
│ │ ├── Galaxy/ # 大恒相机 SDK
│ │ ├── EpicEye/ # EpicEye 相机 SDK
│ │ ├── GenICam/ # GenICam 相机标准库
│ │ ├── IKapLibrary/ # IKap 采集卡 SDK
│ │ └── HCNetSDK/ # 海康 SDK
│ ├── OpenCV320/ # OpenCV 3.2.0ARM aarch64
│ ├── OpenCV480/ # OpenCV 4.8.0ARM aarch64
│ └── eigen-3.3.9/ # Eigen 线性代数库
├── GrabBagPrj/ # 项目构建配置
├── Test/ # 测试代码
├── App/ # 工业视觉应用程序
├── AppAlgo/ # 应用算法与模型
├── AppUtils/ # 应用层公共组件AppCommon、AppConfig、UICommon
├── Utils/ # 基础公共库VrCommon、VrUtils、CloudUtils、DataUtils 等)
├── Nets/ # Modbus、TCP、UDP、ZeroMQ 等网络通信模块
├── Device/ # 相机、激光器、雷达、LED 等设备封装及设备 SDK
├── Module/ # 认证、标定、共享内存、媒体流、接收器等功能模块
├── Robot/ # 机器人接口封装
├── SDK/ # OpenCV、Eigen、Poco、Protobuf 等通用第三方库
├── GrabBagPrj/ # qmake 总工程、构建目录、打包脚本及 Inno Setup 配置
├── Tools/ # 标定、授权、配置和设备调试工具
├── Test/ # 测试工程
├── TestData/ # 测试数据
├── Tools/ # 调试工具
└── Publish/ # 发布构建产物
├── ARMDoc/ # ARM 设备相关文档和图片
├── ARMLable/ # ARM 出库标签模板与资料
└── Publish/ # 发布安装包与构建产物
```
## 应用程序说明
@ -82,10 +35,10 @@ GrabBag/
| WorkpiecePositionApp | 双传感器工件抓取定位 | EpicEye + VzNL 3D相机 | 客户端连接5901 | 502→5020 | - | 连接 BinocularMarkApp |
| WorkpieceSpliceApp | 闭环控制工件拼接组装 | VzNL 3D相机 | 客户端连接5901 | 502→5020 | - | 连接 BinocularMarkApp |
| BinocularMarkApp | 3D Mark 点检测服务 | 大恒相机(双目) | 5901 | - | - | 无 Modbus |
| ParticleSizeApp | 颗粒粒度分析 | VzNL 3D相机 | 7900 | 502→5020 | - | - |
| TunnelChannelApp | 隧道通道检测 | 海康相机 + VzNL 3D相机 | - | 502→5020 | - | 2D+3D 融合 |
| WheelMeasureApp | 轮毂尺寸测量 | VzNL 3D相机 | - | 502→5020 | - | - |
| ParkingSpaceGuideApp | 停机位引导 | Hik 单目网口相机 + RsLidar + LED屏 | - | 502→5020 | - | UDP 8800 输出检测结果 |
| ParticleSizeApp | 颗粒粒度分析 | VzNL 3D相机 | 7900 | 502→5020 | - | - |
| TunnelChannelApp | 隧道通道检测 | 海康相机 + VzNL 3D相机 | - | 502→5020 | - | 2D+3D 融合 |
| WheelMeasureApp | 轮毂尺寸测量 | VzNL 3D相机 | - | 502→5020 | - | - |
| ParkingSpaceGuideApp | 停机位引导 | Hik 单目网口相机 + RsLidar + LED屏 | - | 502→5020 | - | UDP 8800 输出检测结果 |
> **协议说明:**
> - **TCP**:用于与机器人/上位机通信的自定义协议
@ -95,9 +48,13 @@ GrabBag/
## 构建说明
### 环境要求
- Qt 5.x
- C++17 编译器
- qmake 构建系统
- Windows 打包脚本使用以下系统环境变量:
- `QT_PATH`Qt 版本目录,例如 `D:\Qt\5.15.2`
- `ISCC_PATH`Inno Setup 安装目录,例如 `C:\Program Files\Inno Setup 7`
### 构建整个项目Windows
```bash