>
> 1) One problem with this is that an .exp / .lib file will be generated
>
> for *every* Harbour executables created, at least with MSVC. This
>
> is because these two symbols will now be exported from all
>
> Harbour executables. [ I've been dealing with this issue in the last
>
> few months quite heavily. ]
>
>
>
> I don’t understand the problem here. Sorry, I just created a small exe,
> just calling a messagebox() function within a dll and it do not created any
> .exp nor .lib file.
>
> (MSVC 2008)
>
You should try to build a static .exe with same set of files.

> 2) It won't solve -gc3 compiled .prg code. These need some more
>
> functions to be exported.
>
> I’ve not tryed yet. What is the diff between .c pcode and real c code ?
>
> I can understand it could not work because of needed exported function but
> in all case, if –gc3 can avoid working dll, I don’t see why those two
> exported function could avoid the use of –gc3 if we don’t use any DLL ??
>
You misunderstood me, I'm talking about -gc3 compiled .prgs placed
*into* "pcode" .dlls. -gc3 generated .c code will call HVM functions
directly, instead of the hb_vmExecute() HVM loop entry. Since this is
a valid option for users, we should deal with it in some ways.


>  3) I'd use some other name, like HB_EXPORTFORCED, because
>
> the meaning of 'p' is very ambiguous (it was "*p*code dynamic lib
>
> probably, but this isn't precise).
>
> OK, it was just a first try J
>
Smallest detail anyway :)


>  4) It's still unclear what is the importance of maindllp.c, as it's not
>
> used anywhere inside Harbour.
>
>
>
> Maindllp.c must be compiled and linked to create the pcode dll. It is the
> main startup for the dll and also contain some function allowing the code in
> the dll to use the exe internal function vmExecute and symbol mapping.
>
Thanks. Now, this is a problem, because maindllp.c isn't distributed
in any of our binary packages, and it wouldn't be a very good idea
to distribute it as .c file anyway. Did you try creating a static .lib from
it, and adding that lib when you create pcode .dll? If this works, this
should be the way we should distribute it, and in this case, even hbmk
could make use of it. [ IOW, we would probably need a maindllp lib
in our binary distros, and this lib should be built by our make system.
*If* it works this way. ]

Brgds,
Viktor
_______________________________________________
Harbour mailing list
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour

Reply via email to