这两天在构建CICD 流水线作业时 发现通过脚本执行 在本地执行可以正常编译
但是通过CICD 通过远端git-runner 运行就会报错,报错如下:
C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppCommon.targets(151,5): error MSB6006: “cmd.exe”已退出,代码为 3

但在在那台git-runner 通过脚本编译时正常的
然后百度查看下 发现有的跟xxx.vcproj中QT 路径有关 有的跟cmake有关
我没有使用cmake 跟cmake没有多大关系(应该也有关系 qmake) 应该跟QT的路径有关
这里有两种方式可以解决这个问题:
1 鼠标右键项目属性选择“Convert Project to QMake generated Project”,重新编译即可
这里是把相对路径改成绝对路径

2第二种方式 就是把QT版本的路径加入到系统环境变量 这里是系统环境变量 用户环境变量不起作用

这样就能正常编译了
作者在构建CICD流水线时遇到MSBuild编译错误,问题源于远程git-runner执行时的QT路径配置。解决方案包括将项目转换为QMake生成项目并使用绝对路径,或设置系统环境变量中的QT版本路径。

被折叠的 条评论
为什么被折叠?



