基于630版本的1712构建单个组件失败,报错pwd

基于630版本的1712构建单个组件失败,触发了源码构建,使用1711的sdk构建正常

bingo.log.txt (21.8 KB)

答案内容由AI生成,仅供参考:

解决方案

在构建命令中加入 chipv2_enable 参数,具体操作如下:

  1. 核心编译参数:在 bingo buildbmcgo build 命令中添加以下选项:

    -o libsoc_adapter/*:chipv2_enable=True -o libmc4lua/*:chipv2_enable=True
    
  2. 更通用的写法:如果后续其他组件也出现类似错误,可以使用通配符 */* 为所有组件启用此参数:

    -o */*:chipv2_enable=True
    
点击此处查看详细分析解答

根据您提供的 Context 信息,关于“基于630版本的1712构建单个组件失败,报错pwd”的问题,已找到明确的解决方案。

该问题在社区讨论(Topic 6866)中已被标记为已解决。核心原因是构建时缺少特定的编译参数,导致触发了源码构建并报错。

解决方案

在构建命令中加入 chipv2_enable 参数,具体操作如下:

  1. 核心编译参数:在 bingo buildbmcgo build 命令中添加以下选项:

    -o libsoc_adapter/*:chipv2_enable=True -o libmc4lua/*:chipv2_enable=True
    
  2. 更通用的写法:如果后续其他组件也出现类似错误,可以使用通配符 */* 为所有组件启用此参数:

    -o */*:chipv2_enable=True
    

示例命令

根据社区中用户 TuHuaNeng 提供的已验证方案,完整的构建命令参考如下:

bmcgo build --stage stable -r conan_remote -bt debug -o libsoc_adapter/*:chipv2_enable=True -o libmc4lua/*:chipv2_enable=True -o libmgmt_protocol/*:chipv2_enable=True -o mctpd/*:chipv2_enable=True

问题原因分析

  • 该报错 KeyError: 'pwd' 通常与SDK版本不匹配构建环境配置问题有关。
  • 您提到“使用1711的sdk构建正常”,这进一步印证了 1712 架构的SDK可能需要特定的 chipv2_enable 参数来正确配置硬件抽象层(如 libsoc_adapter 组件)。
  • 根据社区建议,如果上述方法未能完全解决问题,请确保您使用的 bmc_sdk 与当前的代码版本(630版本)是配套的,并尝试重新下载并初始化正确的SDK环境

如果真要构建1712版本 需要加参数 -o *:chipv2_enable=True

感谢 已解决!