25.03 fructrl源码构建时出文件找不到的错

背景

代码版本:manifest 25.03
环境版本:dockerfile 25.03
bingo版本:0.5.317
conan远端:“https://devrepo.devcloud.cn-north-4.huaweicloud.com/artgalaxy/api/conan/cn-north-4_ad268a13b93c480087c8a1e4b0fe8b15_conan_1/

问题现象

发构建指令:bingo build -b openUBMC -r openubmc_dev
报错信息:

/bin/sh: line 1: /root/.conan/bin/luac: No such file or directory

初步分析

应该是像是环境上对fructrl的源码构建缺依赖

我知道可以用https://conan.openubmc.cn/conan_1 这个源码,但是种种原因,暂时先用"https://devrepo.devcloud.cn-north-4.huaweicloud.com/artgalaxy/api/conan/cn-north-4_ad268a13b93c480087c8a1e4b0fe8b15_conan_1/"这个临时的

诉求

如何解决这个构建错误?

这个是conan环境搭建漏了一步,你是改了dockefile吗

没有全自动做,是手动安装了bingo和flatbuffers。能告知一下具体漏了哪一步么

拉取manifest代码仓,执行一下init.py脚本

这个执行过了

manifest代码是最新的吗?

Commits详情 - manifest:manifest - GitCode

这个

需要使用25.03tag的代码执行init脚本,你这个不是发布版本,代码存在一些问题。

使用25.03tag重新创建了构建镜像,构建出现另一个错:

关键报错应该是:

File "/usr/local/lib/python3.12/dist-packages/bmcgo/tasks/task_build_conan.py", line 580, in install_ibmc

尝试切换到工作目录手动执行

conan lock create conanfile.py --lockfile-out=ibmc.lock -pr=profile.luajit.ini -r ibmc_dev -s build_type=Debug  -o firmware_mgmt:community_enable=True -o bmc_time:manufacture=True -o skynet:enable_luajit=True -o vpd:board_name=openUBMC -o fructrl:manufacture=True -o chassis:manufacture=True -o help:board_name=openUBMC -o *:module_symvers=c61ed460fefe0c2aeec85ee4e224a2ea8d555b1e45ac085d855123812dfcd6e4 --build=missing

报错如下:

ERROR: Conanfile does not exist in /home/workspace/build/manifest/temp/oct_rtos/conanfile.py

执行目录错误,在temp/conan_source_xx/openubmc/all目录下执行此命令

1、 我们实际的路径是这个:temp/conan_source_debug_dev/ibmc/all/ ,有没有影响?

root@cec0aacdbc6a:/home/workspace/openubmc_0403/manifest/temp/conan_source_debug_dev/ibmc/all# conan lock create conanfile.py --lockfile-out=ibmc.lock -pr=profile.luajit.ini -r ibmc_dev -s build_type=Debug  -o firmware_mgmt:community_enable=True -o bmc_time:manufacture=True -o skynet:enable_luajit=True -o vpd:board_name=openUBMC -o fructrl:manufacture=True -o chassis:manufacture=True -o help:board_name=openUBMC -o *:module_symvers=c61ed460fefe0c2aeec85ee4e224a2ea8d555b1e45ac085d855123812dfcd6e4 --build=missing
ERROR: No remote 'ibmc_dev' defined in remotes

看来应该设置一下远端名:

bingo build -b openUBMC -r openubmc_dev

目前来看,没有conan create 的错误了

fructrl的源码构建问题再次复现,应该怎么处理呢:

要先按最新的的manifest的dockerfile创建环境,然后单独执行一次fructrl的构建,才能将luajit环境部署好

1 个赞

是的,镜像中未预置luac工具。使用bingo构建组件或manifest时,bingo会安装好luac工具。