J I like the idea of free discusion about general concept, but we first face a 
more basic problem.
 
Either on full Borland or full MSVC (no mix of compiler) You can create a pure 
pcode dll, you can load it, but it does'nt work at all, even dynamically (using 
HB_LIBLOAD, HB_LIBDO).
 
It seem that the exe generated does'nt export some needed function (like, at 
least,  hb_vmProcessDynLibSymbols, called from maindllp.c ).

I tried to add it to hbvmpub.ch (like hb_vmExecute ) but it does'nt solve 
anything.
 
For hb_vmExecute(), here is what we can found into hbvmpub.h.
"extern HB_EXPORT void hb_vmExecute( const BYTE * pCode, PHB_SYMB pSymbols ) 
HB_FLATTEN_ATTR;  /* invokes the virtual machine */"

How could I render those two functions exported. If I do impdef myexe.def 
myexe.exe, nothing is exported ?
 
Any Idea, I'm ready to try to make it work but I need some idea on "where or 
what" to search .
 
Thanks to all,
 
Regards,
 
JF,
 
De : harbour-boun...@harbour-project.org 
[mailto:harbour-boun...@harbour-project.org] De la part de Viktor Szakáts
Envoyé : mercredi 18 mars 2009 0:45
À : Harbour Project Main Developer List.
Objet : Re: [Harbour] pCode dll
 
> /half-off-off
ALL are basically compatible, read below:

OWatcom: I suggest you have oWatcom Harbour flags standardized as what
other compilers use as of now. Take a look at -s and -r switch (default
is -r which is "use register calling convention"). Other Windoze
compiler are using -s equivalent (-s = "stack calling convention").It's
should be OK if you're using -r but the creation of import library
become rather clumpsy, because -r append an underscrore AFTER symbol
name.
 
Thanks for the owatcom tip Andi. In OpenWatcom 1.8 -s and -r mean 
something different, but the same idea can be accessed using s and r 
postfixes for CPU family switches.
 
MSVC,POCC,ICC and GCC are fully compatible. We can easily rename an
MSVC-created import lib to GCC name, ie. harbour.lib->libharbour.a.

Borland VS MSVC family only differs in an underscore. Borland requires
an underscore IN FRONT OF symbol name. Take a look at switch -a in
Borland's IMPLIB.EXE/IMPDEF.EXE.
 
Yes, problem is that it's not binary compatible, it needs implib tricks 
(sometimes manual editing of .def files) and app rebuild. So it's practically 
not very usable. I just can wonder what was the goal of Borland with this idea.
 
Brgds,
Viktor
 
_______________________________________________
Harbour mailing list
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour

Reply via email to