Pull Request已成功合入, 合并人@CANN-robot
(感谢 游震 的贡献)变更摘要
本次 PR 修复了 install.sh 安装脚本中一个关键缺陷:当 config.ini 文件因 opp/vendors 目录属主/权限问题更新失败时,脚本仍静默输出 SUCCESS,导致用户按 QUICKSTART 操作后运行算子报 error 161001(关联 issue #4106)。核心改动是为 cmake/scripts/custom/install.sh 中 config.ini 更新流程的六处关键操作补充返回值检查,失败时记录明确错误信息并 exit 1;同时在安装结束处增加 grep load_priority 校验提示。文档侧在 QUICKSTART.md 和 compile.md 安装步骤后同步增加校验指引,覆盖工具链安装脚本不包含本修复时的场景。
主要改动
install.sh增加六处返回值检查与错误退出:对chmod u+w vendors、touch config.ini、chmod 640 config.ini、echo load_priority写入、sed更新及chmod 755 config.ini六处操作增加$?检查,失败时输出包含当前用户(whoami)和具体路径的[ERROR]日志并exit 1,杜绝权限失败静默报SUCCESS的问题。- 优化
echo load_priority错误日志信息:将原有"[ERROR] echo load_priority failed"改为"[ERROR] write load_priority to ${config_file} failed",使错误信息包含目标文件路径,更便于排查。 - 安装结束新增 verify 日志提示:在安装流程末尾增加
log "[INFO] verify install: run [ grep load_priority ${config_file} ] to confirm the vendor is loaded",引导用户主动校验安装结果。 - 文档补充安装校验指引:在
docs/QUICKSTART.md和docs/zh/install/compile.md的安装步骤后增加grep load_priority校验指引,当工具链版本安装脚本不包含本修复时,用户仍可通过文档指引发现安装失败并排查权限问题。


Thanks for your pull-request.
The full list of commands accepted by me can be found at here.
You can get sig-info at here.
For more, you also can visit HICANN.
PR Approval Progress
✅ Congratulations! All modules have met the lgtm and approve requirements.
Module Approval Details
| module | lgtm status | approve status |
|---|---|---|
| cmake | ✅ wang-minbo, gaoxiang618 (2/2) | ✅ wang-minbo, gaoxiang618 (2/1) |
| docs | ✅ wang-minbo, 宋恺 (2/2) | ✅ 宋恺, wang-minbo (2/1) |
💡 Tip:
- Committer can comment
/approveor/lgtm- Commenting
/approveimplies both code review (lgtm) and intent to merge (approve)
CLA Signature Pass
youzhen5418, thanks for your pull request. All authors of the commits have signed the CLA. 👍


流水线任务触发成功
任务链接 [1bf781c9704d4b589bcfda87b2375652][流水线指导]
| 任务名称 | 状态 | 日志 | 下载链接 |
|---|---|---|---|
| codecheck | ✅ SUCCESS | >>>>> | |
| SCA | ✅ SUCCESS | >>>>> | |
| antipoison | ✅ SUCCESS | >>>>> | |
| codecheck_style | ✅ SUCCESS | >>>>> | |
| StaticCheck_codespell | ✅ SUCCESS | ||
| StaticCheck_link_validity | ✅ SUCCESS | ||
| StaticCheck_resource_existence | ✅ SUCCESS | ||
| StaticCheck_tag_closed | ✅ SUCCESS | ||
| StaticCheck_markdownlint | ✅ SUCCESS | ||
| codecheck_checkpr | ✅ SUCCESS | ||
| codecheck_precommit | ✅ SUCCESS | >>>>> |
[2026-08-18 11:47:45] CI执行结束


描述
安装时
config.ini因opp/vendors目录属主/权限问题更新失败,但install.sh仍输出SUCCESS,导致用户按 QUICKSTART 操作后运行算子报error 161001(issue #4106)。修改内容:
cmake/scripts/custom/install.sh):为config.ini更新流程的六处关键操作(chmod vendors / touch / chmod 640 / echo load_priority / sed 更新 / chmod 755)增加返回值检查,失败时记录明确错误并exit 1,避免静默报 SUCCESS;安装结束时增加 verify 日志提示用户校验;grep load_priority校验指引,预期不符时提示排查opp/vendors属主或权限。关于工具链优先级:本仓
install.sh的修改在 CANN 工具链fwk_modules/scripts/install.sh不存在时生效(custom_build.cmake:1223的 fallback 分支)。当工具链目录存在时,构建优先使用工具链版本,本仓修改不进入.run包。工具链版本的修复需由 CANN 侧同步,本 PR 通过文档校验指引覆盖此场景——用户按文档校验即可发现安装失败,排查权限后重装可解决问题。关联的Issue
关联Issue #4106
测试
add_example运行成功(mean result=2.000000);--install-path路径:安装+运行成功;grep load_priority无输出时正确指向权限问题。文档更新
docs/QUICKSTART.md:第3步安装后增加 config.ini 校验指引(1 行);docs/zh/install/compile.md:安装步骤后同步增加校验指引(1 行)。类型标签