0

Lua 5.3.5 is embedded in my application (written in C++) and I am using pre-built dynamic 32 bit Lua 5.3.5 libraries on Windows. In my application, I have a script editor which runs Lua scripts. I also use pre-built IUP 3.25 libraries (32 bit) to be able to run IUP scripts in Lua.

I have tested iup examples on github. It seems most are running successful except this example which is on OpenGL. The problem happens with the line require("luagl"). When I delete the line, there is no error of "multiple VMs detected"; however, then the frame shows with no lines. I am confused as I can run examples like this one with no problems.

I used Dependency walker and it seems all DLL libraries are pointing to Lua53.dll and for the OpenGL example the lines:

1) require("iupluagl"): Loads a) iupgl.dll, iuplua53.dll, lua53.dll and iup.dll

2) require("luagl"): Loads a) lua53.dll and luagl_base.dll

Exactly the same problem "multiple VMs detected" for exactly the same example happens with IUP 3.26 libraries.

Any ideas appreciated.

macroland
  • 973
  • 9
  • 27
  • Hi, this should not happen. I'll check it and return to you, but only next week. Thanks. – Antonio Scuri Feb 09 '19 at 11:35
  • Does IUP libraries depend on lua53.dll? Or does it contain its own Lua inside its DLL? (Inspect UIP library DLL with something like "dependencywalker") – Egor Skriptunoff Feb 09 '19 at 11:36
  • I think IUP depends on lua53.dll as it ships a lua53.dll file in the binaries. The problem doesn't happen with Lua5.2. By the way I am using Visual Studio 2017. – macroland Feb 09 '19 at 12:41
  • Do you have only one file "lua53.dll" on your computer? – Egor Skriptunoff Feb 09 '19 at 13:37
  • In the folder, where I run the executable to start my C++ application, there is only one lua53.dll. – macroland Feb 09 '19 at 14:10
  • The problem is solved: 1) downloading "lua-5.3.4_Win32_dll15_lib" and 2) changing the internal lua engine and 3) using the lua53.dll that comes with it. – macroland Feb 09 '19 at 14:22
  • 1
    Hi, I just run that script using the latest IUP version (3.26) and Lua 5.1, 5.2 and 5.3, in 32 and 64 bits. There were no problems. I suggest you to download the "Tools Executables" package that contains some executables that you can run the same script on your system. For instance: iup-3.26-Lua53_Win32_bin.zip. If the script works, then compare that set with your own set. Maybe the luagl package you are using is outdated? Anyway, just another path, since you already solved. – Antonio Scuri Feb 11 '19 at 20:21
  • Hi, thanks for the updates. I havent had the problem with Lua 5.2 or 5.3.4 but it was with Lua 5.3.5. Solved it with downgrading to Lua 5.3.4. Not sure but maybe I have done something wrong during the initial upgrade process. – macroland Feb 17 '19 at 16:23

0 Answers0