You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

调用QA-C时传入过多include参数导致执行失败问题求助

QAC调用传入大量include路径时报错问题

我在向QAC配置中添加源文件时遇到问题,经多次尝试排查,发现问题出在调用QAC时作为参数传入的include路径数量过多,减少include路径数量后QAC配置即可正常运行。

触发问题的操作逻辑

Makefile中的执行逻辑

我在makefile中编写了如下逻辑尝试批量添加源文件:

@for f in $(filter-out $(QAC_EXCLUDE_FILES),$(QAC_SRC)); do \
    echo "  - $$f" 1>&2; \
    $(QAC) admin -P $(QAC_DIR) -a -- $(QAC_DEF) $(QAC_D_PROJ) $(QAC_INC) $$f >/dev/null; \
done

手动CMD单条调用测试

我也尝试在命令提示符中直接运行单条命令仅添加一个文件:

D:/Tools/PRQA_Framework_2.4.0/common/bin/qacli.exe admin -P D:/Output/qac -a -- -Itoo -Imany -Iincludes D:/Src/import.c

已验证的基础信息

  • 整条命令长度未超过Windows命令行8191字符的上限,实际长度约为5500字符
  • 使用的是公司通用的QAC配置,其他同事均无异常,仅最近我新增了若干include路径后出现该问题
  • 相同的include路径列表在编译流程中可以正常使用,不存在CMD命令长度问题,仅调用QAC时会报错
  • 运行环境为Windows 10,使用MSYS2工具链

两种调用方式的报错信息

  • 从makefile调用报错:/usr/bin/sh: -c: line 3: syntax error: unexpected end of file
  • 从CMD调用报错:CreateProcess error=3, the system cannot find the path specified

只要减少include路径的数量,所有操作都能正常运行。

内容的提问来源于stack exchange,提问作者Lodhart

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 19:57:01