1. I need help to get jmEdit to compile
- Posted by vmars Jun 12, 2009
- 992 views
- Last edited Jun 13, 2009
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
2. 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
3. Re: I need help to get jmEdit to compile
- Posted by vmars Jun 13, 2009
- 927 views
- Last edited Jun 14, 2009
Yes, I removed the 0 , and now I get:
C:\Euphoria\wxEuphoria\vmProgramming\jmeditor-zip\dll.e:61 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
... called from C:\Euphoria\wxEuphoria\vmProgramming\jmeditor-zip\libs/gdi32.ew:2408
dll.e:61 line 61 is this:
return machine_func(M_DEFINE_C, {lib, routine_name, arg_types, return_type})
gdi32.ew:2408 I thought the 2408 was a line sequence #. The last line in gdi32.ew is 1830 for me.
Also, did you have trouble with jmEdit finding dll.e , gdi32.ew , etc.. I had to dump all the pgms in Libs.Folder into same folder as editor.exw .
Thanks
4. Re: I need help to get jmEdit to compile
- Posted by jimcbrown (admin) Jun 14, 2009
- 932 views
Yes, I removed the 0 ,
No you didn't.
and now I get:
C:\Euphoria\wxEuphoria\vmProgramming\jmeditor-zip\dll.e:61 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
... called from C:\Euphoria\wxEuphoria\vmProgramming\jmeditor-zip\libs/gdi32.ew:2408
dll.e:61 line 61 is this:
return machine_func(M_DEFINE_C, {lib, routine_name, arg_types, return_type})
gdi32.ew:2408 I thought the 2408 was a line sequence #. The last line in gdi32.ew is 1830 for me.
Also, did you have trouble with jmEdit finding dll.e , gdi32.ew , etc.. I had to dump all the pgms in Libs.Folder into same folder as editor.exw .
Thanks
For emphasis, I'll repeat again:
arg_types = {16777220,16777220,16777220,0,16777220,16777220}
Based on what you said.
gdi32.ew:2408 I thought the 2408 was a line sequence #. The last line in gdi32.ew is 1830 for me.
Looks like you edited the wrong copy of gdi32.ew ???
5. Re: I need help to get jmEdit to compile
- Posted by vmars Jun 14, 2009
- 892 views
Aha,
I needed to remove the '0' and the ','.
Works just fine now, Thanks!