epics-modules / lua

Lua Scripting Record for EPICS
https://epics-modules.github.io/lua/
7 stars 4 forks source link

../../../luaApp/src/luaaa/luaaa.hpp:979: #24

Open PeiyuQuan opened 2 years ago

PeiyuQuan commented 2 years ago

Hello, When I run IOC of AMC100, I found this issue.

Connect to virtual motor controller server

drvAsynIPPortConfigure("AMC-1_IP","192.168.0.110:9090", 0, 0, 0)

ScriptControllerConfig( "PORT_NAME", num_axes, "lua_script", "PARAMS=")

ScriptControllerConfig("AMC-1", 2, "Attocube_AMC.lua", "PORT='AMC-1_IP'") xxx: ../../../luaApp/src/luaaa/luaaa.hpp:979: luaaa::LuaClass< >::LuaClass(lua_State, const char, const luaL_Reg*) [with TCLASS = _apdWrapper; lua_State = lua_State; luaL_Reg = luaL_Reg]: Assertion `klassName == nullptr' failed. Aborted (core dumped)

keenanlang commented 2 years ago

I've tracked this down to a problem with the CPP class binding code and not being able to have it linked to multiple instances of lua environment at the same time (each axis gets its own environment).

I've opened up an issue with the luaaa library maintainer. In the meantime, you can deactivate that functionality and go back to the simpler libraries by putting CXX11_SUPPORT=NO into CONFIG_SITE.local.Linux and rebuilding.

keenanlang commented 2 years ago

I believe that I've made a temporary fix with 8ad0ee0a12a74b046a0d153f61e7415c7b86f4f6 , though an upstream fix to the library would need to be more complete.