已关闭
[Requirement|需求建议]: 去除构建脚本对 gawk 的依赖 #1348
songkai111创建于  4月23日关闭于  4月24日
songkai111成员
4月23日 创建

一、背景信息

ops-math 项目中 build.shinstall_deps.shscripts/kernel/binary_script/ 下多个脚本以及 scripts/util/gen_compile_option.sh 共 10 个文件依赖 gawk 命令进行日志时间戳格式化。gawk 并非所有 Linux 发行版的默认预装工具,在部分构建环境中需要额外安装,增加了环境准备成本。

二、价值/作用

  • 降低构建环境依赖:移除 gawk 作为必需依赖,减少环境准备步骤
  • 提高兼容性:纯 bash 实现不依赖外部工具,在更多平台上可开箱即用
  • 简化安装流程install_deps.sh 无需再包含 gawk 的检测和安装逻辑

三、设计方案

将所有 gawk '{print strftime("[%Y-%m-%d %H:%M:%S]"), \/usr/bin/bash}' 调用替换为等效的纯 bash 实现:

while IFS= read -r line; do echo "$(date '+[%Y-%m-%d %H:%M:%S]') $line"; done

该实现功能与原 gawk 调用一致:逐行读取管道输入,为每行添加 [YYYY-MM-DD HH:MM:SS] 格式的时间前缀。

同时移除 install_deps.sh 中的 install_gawk() 函数及调用,并从文档依赖列表中移除 gawk。

关联 PR:https://gitcode.com/cann/ops-math/pull/2407

likedislike
Ssongkai111成员
4月23日 添加了label:requirement
CANN-robotCANN-robot成员
4月24日 关闭了 issue
CANN-robotCANN-robot成员
4月24日 添加了label:resolved