Re: Bad Routine Number Jolt Physics
- Posted by Icy_Viking Aug 14, 2023
- 613 views
Thanks Greg. I rebuilt the DLL with the 32-bit parameters as you mentioned in the other thread. So now I have joltc32.dll
include std/ffi.e include std/machine.e include std/os.e public atom jolt = 0 ifdef WINDOWS then jolt = open_dll("joltc32.dll") elsifdef LINUX or FREEBSD then jolt = open_dll("libjoltc32.so") end ifdef if jolt = -1 then puts(1,"Failed to load library!\n") abort(0) end if
I also fixed the typos. I'm still getting the bad routine number though. I checked with another 32-bit DLL and I know by default my Euphoria installtion is 32-bits. So I don't know why I'm still getting the error.
I did the (build a separate 32-bit library) > mingw32-make BITS32=1 TARGET=joltc32.dll > mingw32-make clean to make sure I get a 32-bit DLL built.
I even did the steps all over again from scratch. Still getting bad routine-number id (1).
include std/machine.e include joltc.e JPC_RegisterDefaultAllocator()
Here's the error from the file.
ffi.e:1011 in function c_func() c_proc/c_func: bad routine number (1) rid = 1 args = {} fn = <no value> cif = <no value> name = <no value> nargs = <no value> parg_types = <no value> rtype = <no value> pargs = <no value> pfree = <no value> arg_types = <no value> i = <no value> parg = <no value> rtype_size = <no value> prvalue = <no value> rvalue = <no value> i = <no value> joltc.e:399 in procedure JPC_RegisterDefaultAllocator() void (from inlined routine 'c_proc' at 2) = <no value>