Re: I need help to get jmEdit to compile
- Posted by andi Jun 13, 2009
- 933 views
I am trying to compile jmEditor (win32lib), but am getting the following error msg:
C:\euphoria\wxEuphoria\vmProgramming\jmeditor-zip\mergedAll\dll.e:56 in function define_c_func() Invalid argument type lib = 2012282880 routine_name = {67'C',114'r',101'e',97'a',116't',101'e',68'D',73'I',66'B', 83'S',101'e',99'c',116't',105'i',111'o',110'n'} arg_types = {16777220,16777220,16777220,0,16777220,16777220} return_type = 16777220
The 'define_c_func' statement in 'dll.e' looks like this:
global function define_c_func(object lib, object routine_name, sequence arg_types, atom return_type) -- define a C function (or machine code routine) return machine_func(M_DEFINE_C, {lib, routine_name, arg_types, return_type}) end function
From 'arg_types' above, args appear to all be the same type (16777220). But they should
be of diff types per 'global function define_c_func'.
... called from C:\euphoria\wxEuphoria\vmProgramming\jmeditor-zip\mergedAll\gdi32.ew:2408
I tried changing all the define_c_func from this:
-- global function define_c_func(object lib, object routine_name, -- sequence arg_types, atom return_type) --
to this:
global function define_c_func(object lib, object routine_name, object arg_types, object return_type)
Any ideas how to get jmEdit to compile?
Thanks! ...Vern
Hi
I downloaded jmeditor from Rapideuphoria and tried to run it. I got some errormessages pointing to this line:
line 2408 in gdi32.ew
xCreateDIBSection = define_c_func( gdi32, "CreateDIBSection", {C_LONG, C_LONG, C_INT, 0, C_LONG, C_LONG}, C_LONG ),
I removed the '0' and it runs well. I also translated it with EU3.1 and compiled it with OpenWatcom 1.8 seems to work.
(I didn't take care if the argument is missing later, it seems this function is not used in the Editor.)
Bye