gen之后的日志如下:
root@8a87fee23271:/home/workspace/source/yctco_app# bingo gen -r cbmc_dev
Conan 1 is on a deprecation path, please consider migrating to Conan 2
Configuration:
[settings]
arch=x86_64
build_type=Dt
compiler=gcc
compiler.libcxx=libstdc++11
compiler.version=9
os=Linux
[options]
[build_requires]
[env]
AR=ar
AS=as
CC=gcc
CFLAGS=-Wall -fPIC -fstack-protector-all -Wl,-z,relro -Wl,-z,noexecstack -Wl,-z,now -pie -g -fno-common -std=gnu11
CONAN_BUILD_TYPE=DT
CONAN_CMAKE_SYSTEM_VERSION=3.16
CONAN_DISABLE_STRICT_MODE=1
CONAN_REVISIONS_ENABLED=1
CONAN_SKIP_BROKEN_SYMLINKS_CHECK=True
CXX=g++
CXXFLAGS=-I"$standalone_toolchain/$target_host/lib/include" -Wall -fPIC -fstack-protector-all -Wl,-z,relro -Wl,-z,noexecstack -Wl,-z,now -pie -fno-common -std=c++17
HOSTCC=gcc
LD=ld
STRIP=strip
Installing package: mdb_interface/1.70.101@cbmc.release/rc
Requirements
mdb_interface/1.70.101@cbmc.release/rc from local cache - Cache
Packages
mdb_interface/1.70.101@cbmc.release/rc:a49a2cb5c5c787c5f49ecd419fe1553f1bada9c8 - Cache
Installing (downloading, building) binaries…
mdb_interface/1.70.101@cbmc.release/rc: Already installed!
Generator deploy created deploy_manifest.txt
Aggregating env generators
make[1]: warning: jobserver unavailable: using -j1. Add ‘+’ to parent make rule.
make[1]: Entering directory ‘/home/workspace/source/yctco_app/temp/lua_codegen’
python3 /home/workspace/source/yctco_app/temp/lua_codegen/script/check_intfs.py -d /home/workspace/source/yctco_app/temp/lua_codegen/../../temp/opt/bmc/apps/mdb_interface/ -n yctco_app -m /home/workspace/source/yctco_app/mds -o /home/workspace/source/yctco_app/temp/lua_codegen/script/../temp/check_intfs.json
make[2]: Entering directory ‘/home/workspace/source/yctco_app/temp/lua_codegen/proto’
make[2]: Nothing to be done for ‘default’.
make[2]: Leaving directory ‘/home/workspace/source/yctco_app/temp/lua_codegen/proto’
make[2]: Entering directory ‘/home/workspace/source/yctco_app/temp/lua_codegen/templates’
make[3]: Entering directory ‘/home/workspace/source/yctco_app/temp/lua_codegen/templates/apps’
make[3]: warning: jobserver unavailable: using -j1. Add ‘+’ to parent make rule.
python3 /home/workspace/source/yctco_app/temp/lua_codegen/script/gen_intf_rpc_json.py -i /home/workspace/source/yctco_app/mds/service.json -o /home/workspace/source/yctco_app/temp/lua_codegen/temp/yctco_app/client.json -d /home/workspace/source/yctco_app/temp/lua_codegen/../../temp/opt/bmc/apps/mdb_interface/ -s /home/workspace/source/yctco_app/mds/service.json -c
python3 /home/workspace/source/yctco_app/temp/lua_codegen/script/gen_rpc_msg_json.py -i /home/workspace/source/yctco_app/mds/service.json -o /home/workspace/source/yctco_app/temp/lua_codegen/temp/yctco_app/json_types/ -d /home/workspace/source/yctco_app/temp/lua_codegen/../../temp/opt/bmc/apps/mdb_interface/ -n yctco_app -x
python3 /home/workspace/source/yctco_app/temp/lua_codegen/script/template.py -d /home/workspace/source/yctco_app/proto -v 3 -j /home/workspace/source/yctco_app/temp/lua_codegen/temp/yctco_app/json_types/ -n yctco_app -i /home/workspace/source/yctco_app/temp/lua_codegen/temp/yctco_app/client.json -f /home/workspace/source/yctco_app/temp/lua_codegen/script/lua_format.py -t client.lua.mako -o /home/workspace/source/yctco_app/gen/yctco_app/client.lua
python3 /home/workspace/source/yctco_app/temp/lua_codegen/script/merge_model.py -i /home/workspace/source/yctco_app/mds/model.json -o /home/workspace/source/yctco_app/temp/lua_codegen/temp/yctco_app/_model.json -d /home/workspace/source/yctco_app/temp/lua_codegen/../../temp/opt/bmc/apps/mdb_interface/ -c /home/workspace/source/yctco_app/temp/lua_codegen/script/../temp/check_cmd.json
python3 /home/workspace/source/yctco_app/temp/lua_codegen/script/gen_intf_rpc_json.py -i /home/workspace/source/yctco_app/temp/lua_codegen/temp/yctco_app/_model.json -o /home/workspace/source/yctco_app/temp/lua_codegen/temp/yctco_app/service.json -s /home/workspace/source/yctco_app/mds/service.json -p /home/workspace/source/yctco_app/mds/ipmi.json
python3 /home/workspace/source/yctco_app/temp/lua_codegen/script/gen_rpc_msg_json.py -i /home/workspace/source/yctco_app/temp/lua_codegen/temp/yctco_app/_model.json -o /home/workspace/source/yctco_app/temp/lua_codegen/temp/yctco_app/json_types/ -d /home/workspace/source/yctco_app/temp/lua_codegen/../../temp/opt/bmc/apps/mdb_interface/ -n yctco_app -m
ls: cannot access ‘/home/workspace/source/yctco_app/temp/lua_codegen/temp/yctco_app/device_types/’: No such file or directory
{‘package’: ‘Properties’, ‘name’: ‘GetPropertiesByOptionsReq’, ‘options’: {‘has_struct’: True}, ‘type’: ‘Message’, ‘properties’: [{‘original_name’: ‘Interface’, ‘name’: ‘Interface’, ‘type’: ‘string’, ‘options’: {‘validate’: ‘’, ‘allow_null’: True, ‘critical’: False}, ‘id’: 0, ‘repeated’: False, ‘is_enum’: False, ‘description’: ‘接口名’}, {‘original_name’: ‘Options’, ‘name’: ‘Options’, ‘type’: ‘Properties.Options’, ‘options’: {‘validate’: ‘’, ‘allow_null’: True, ‘critical’: False}, ‘id’: 1, ‘repeated’: False, ‘is_enum’: False, ‘description’: ‘属性能力选项,例如是否弃用、是否是易变属性等’}], ‘nested_type’: }
{‘package’: ‘Properties’, ‘name’: ‘GetOptionsRsp’, ‘options’: {‘has_struct’: True}, ‘type’: ‘Message’, ‘properties’: [{‘original_name’: ‘Options’, ‘name’: ‘Options’, ‘type’: ‘Properties.Options’, ‘options’: {‘validate’: ‘’, ‘allow_null’: True, ‘critical’: False}, ‘id’: 0, ‘repeated’: False, ‘is_enum’: False, ‘description’: ‘属性能力选项,例如是否弃用、是否是易变属性等’}], ‘nested_type’: }
{‘package’: ‘Properties’, ‘name’: ‘ObjectIdentifier’, ‘options’: {‘has_struct’: True}, ‘type’: ‘Message’, ‘properties’: [{‘original_name’: ‘ObjectIdentifier’, ‘name’: ‘ObjectIdentifier’, ‘type’: ‘Properties.StructIdentifier’, ‘options’: {‘readonly’: True, ‘validate’: ‘’, ‘allow_null’: True, ‘critical’: False}, ‘id’: 0, ‘repeated’: False, ‘is_enum’: False, ‘description’: ‘对象标志符’}], ‘nested_type’: }
python3 /home/workspace/source/yctco_app/temp/lua_codegen/script/template.py -d /home/workspace/source/yctco_app/proto -v 3 -j /home/workspace/source/yctco_app/temp/lua_codegen/temp/yctco_app/json_types/ -n yctco_app -i /home/workspace/source/yctco_app/temp/lua_codegen/temp/yctco_app/service.json -f /home/workspace/source/yctco_app/temp/lua_codegen/script/lua_format.py -t service.lua.mako -o /home/workspace/source/yctco_app/gen/yctco_app/service.lua
python3 /home/workspace/source/yctco_app/temp/lua_codegen/script/gen_schema.py -i /home/workspace/source/yctco_app/temp/lua_codegen/temp/yctco_app/_model.json -n yctco_app -o /home/workspace/source/yctco_app/mds/schema.json
python3 /home/workspace/source/yctco_app/temp/lua_codegen/script/template.py -d /home/workspace/source/yctco_app/proto -v 3 -j /home/workspace/source/yctco_app/temp/lua_codegen/temp/yctco_app -i /home/workspace/source/yctco_app/temp/lua_codegen/temp/yctco_app/_model.json -f /home/workspace/source/yctco_app/temp/lua_codegen/script/lua_format.py -t model.lua.mako -n yctco_app -o /home/workspace/source/yctco_app/gen/class/model.lua
mkdir -p /home/workspace/source/yctco_app/temp/lua_codegen/temp/yctco_app/model_types/
python3 /home/workspace/source/yctco_app/temp/lua_codegen/script/gen_rpc_msg_json.py -i /home/workspace/source/yctco_app/temp/lua_codegen/temp/yctco_app/_model.json -o /home/workspace/source/yctco_app/temp/lua_codegen/temp/yctco_app/model_types/ -d /home/workspace/source/yctco_app/temp/lua_codegen/../../temp/opt/bmc/apps/mdb_interface/ -p
python3 /home/workspace/source/yctco_app/temp/lua_codegen/script/gen_historical_local_db_json.py -i /home/workspace/source/yctco_app/temp/lua_codegen/../../gen_bak/yctco_app/local_db.lua -o /home/workspace/source/yctco_app/temp/lua_codegen/temp/yctco_app/historical_local_db.json
python3 /home/workspace/source/yctco_app/temp/lua_codegen/script/gen_db_json.py -i /home/workspace/source/yctco_app/temp/lua_codegen/temp/yctco_app/_model.json -m /home/workspace/source/yctco_app/temp/lua_codegen/temp/yctco_app/historical_local_db.json -o /home/workspace/source/yctco_app/temp/lua_codegen/temp/yctco_app/db_json.json
python3 /home/workspace/source/yctco_app/temp/lua_codegen/script/template.py -d /home/workspace/source/yctco_app/proto -j /home/workspace/source/yctco_app/temp/lua_codegen/temp/yctco_app/ -n yctco_app -i /home/workspace/source/yctco_app/temp/lua_codegen/temp/yctco_app/db_json.json -f /home/workspace/source/yctco_app/temp/lua_codegen/script/lua_format.py -t db.lua.mako -o /home/workspace/source/yctco_app/gen/yctco_app/db.lua
python3 /home/workspace/source/yctco_app/temp/lua_codegen/script/template.py -d /home/workspace/source/yctco_app/proto -j /home/workspace/source/yctco_app/temp/lua_codegen/temp/yctco_app/ -n yctco_app -i /home/workspace/source/yctco_app/temp/lua_codegen/temp/yctco_app/local_db_json.json -f /home/workspace/source/yctco_app/temp/lua_codegen/script/lua_format.py -t local_db.lua.mako -o /home/workspace/source/yctco_app/gen/yctco_app/local_db.lua
python3 /home/workspace/source/yctco_app/temp/lua_codegen/script/gen_ipmi_json.py -i /home/workspace/source/yctco_app/mds/ipmi.json -v 3 -o /home/workspace/source/yctco_app/temp/lua_codegen/temp/yctco_app/ipmi/ipmi.proto.json
python3 /home/workspace/source/yctco_app/temp/lua_codegen/script/template.py -d /home/workspace/source/yctco_app/proto -j /home/workspace/source/yctco_app/temp/lua_codegen/temp/yctco_app -n yctco_app -i /home/workspace/source/yctco_app/temp/lua_codegen/temp/yctco_app/ipmi/ipmi.proto.json -f /home/workspace/source/yctco_app/temp/lua_codegen/script/lua_format.py -v 3 -t ipmi.lua.mako -o /home/workspace/source/yctco_app/gen/yctco_app/ipmi/ipmi.lua
python3 /home/workspace/source/yctco_app/temp/lua_codegen/script/template.py -d /home/workspace/source/yctco_app/proto -j /home/workspace/source/yctco_app/temp/lua_codegen/temp/yctco_app -n yctco_app -i /home/workspace/source/yctco_app/temp/lua_codegen/temp/yctco_app/ipmi/ipmi.proto.json -t ipmi_message.lua.mako -o /home/workspace/source/yctco_app/gen/yctco_app/ipmi/ipmi_message.lua
python3 /home/workspace/source/yctco_app/temp/lua_codegen/script/sep_ipmi_message_cmds.py /home/workspace/source/yctco_app/mds/ipmi.json /home/workspace/source/yctco_app/gen/yctco_app/ipmi/ipmi_message.lua /home/workspace/source/yctco_app/gen/yctco_app/ipmi/cmds yctco_app /home/workspace/source/yctco_app/temp/lua_codegen/script/lua_format.py
python3 /home/workspace/source/yctco_app/temp/lua_codegen/script/template.py -d /home/workspace/source/yctco_app/proto -j /home/workspace/source/yctco_app/temp/lua_codegen/temp/yctco_app/ -n yctco_app -i /home/workspace/source/yctco_app/temp/lua_codegen/temp/yctco_app/db_json.json -f /home/workspace/source/yctco_app/temp/lua_codegen/script/lua_format.py -t orm_classes.lua.mako -o /home/workspace/source/yctco_app/gen/yctco_app/orm_classes.lua
make[3]: Leaving directory ‘/home/workspace/source/yctco_app/temp/lua_codegen/templates/apps’
make[2]: Leaving directory ‘/home/workspace/source/yctco_app/temp/lua_codegen/templates’
make[1]: Leaving directory ‘/home/workspace/source/yctco_app/temp/lua_codegen’
我尝试手动增加register_ipmi_cmd的函数定义后,IPMI命令可以正常注册并使用,应该就是bmcgo版本的问题吧?