> Jonathan Worthington <[EMAIL PROTECTED]> wrote: > > Ah, that's changed, 'cus it used to work with me doing that. :-) So now it > > loads the library, but fails here:- > > > dlfunc P0, P1, "MessageBoxA", "llttl" > > > With:- > > > Parrot VM: PANIC: Unknown signature type! > > Your parrot seems to lack JIT support. So all function signatures you > want to use have to be included in src/call_list.txt. Yes, JIT support is currently broken on Win32, but it hadn't used to be. I've had a poke around to discover the cause of these errors:-
src\jit_cpu.c(95) : error C2065: 'RTYPE_COM' : undeclared identifier src\jit_cpu.c(149) : error C2065: 'EXEC_CALLDISP' : undeclared identifier src\jit_cpu.c(166) : error C2065: 'RTYPE_DATA' : undeclared identifier And I believe the following warning to also be relevant:- src\jit_cpu.c(95) : warning C4013: 'Parrot_exec_add_text_rellocation' undefined; assuming extern returning int These are all defined in exec.h, and are contained within a #if EXEC_CAPABLE block. Win32 is not EXEC_CAPABLE (or certainly, configuring with --execcapable=1 causes a string of link errors due to unresolved external symbols, e.g. _Parrot_exec_run). It looks like JIT support has become dependent on EXEC support - I'm way out of my depth as to whether that's the way things should be. :-) > >> BTW - are the nci tests succeeding on Win32: > >> > >> $ make libnci.dll > > That fails with:- > > > NMAKE : fatal error U1073: don't know how to make 'parrot' > > > libnci$(SO): $(SRC)\nci_test.c parrot$(EXE) > > $(LD) $(LD_SHARED) $(LD_SHARED_FLAGS) $(LDFLAGS) $< -o $@ > > $(EXE) isn't defined it seems. I've checked in a change to use ${exe} > here. That fixes the original problem, but now I get:- rem blib/lib/libparrot_s.lib link -out:parrot.exe -nologo -nodefaultlib -debug -opt:ref,icf -machine:x 86 -debug imcc\main.obj blib/lib/libparrot_s.lib oldnames.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib netapi32.lib uuid.lib wsock32.lib mpr.lib winmm.lib version.lib odbc32.lib odbccp32.lib msvcrt.lib LINK : warning LNK4075: ignoring /EDITANDCONTINUE due to /OPT specification NMAKE : warning U4006: special macro undefined : '$<' link -dll -def:libparrot.def -nologo -debug -o libnci.dll LINK : warning LNK4044: unrecognized option "o"; ignored LINK : fatal error LNK1181: cannot open input file "libnci.dll" NMAKE : fatal error U1077: 'link' : return code '0x49d' Stop. > Thank you for your feedback, You're welcome, Jonathan