On Sun, 10 Aug 2008, Chen Kedem wrote:
Hi Chen,
> I had finally managed to build harbour.dll with CodeGuard
> set HB_BUILD_DLL=yes
> set CFLAGS=-v -y -vG -Od
> set LDFLAGSDLL=cg32.lib
> set LDFLAGS=cg32.lib
> both LDFLAGS and LDFLAGSDLL need to be defined. I wonder why it is not needed
> to add cg32.lib to normal (no DLL) build when the CodeGuard -vG is set.
I maybe it's enough to use -vG switch instead of cg32.lib to inform
BCC that it should link with cg32.lib and when the same set of switches
where passed everywhere it was working.
> The attached ZIP contains same build logs from hbtest.exe and hbtest-dll.exe
> and there are differences.
> (Rev.9128 BCB 5.0 WinNT4.0)
It's caused by activating scallar classes in hbextern.ch:
EXTERNAL HBSCALAR
EXTERNAL HBARRAY
EXTERNAL HBBLOCK
EXTERNAL HBCHARACTER
EXTERNAL HBDATE
EXTERNAL HBLOGICAL
EXTERNAL HBNIL
EXTERNAL HBNUMERIC
so simple types have their own classes and default HVM error messages
are overloaded by TObject:MSGNOTFOUND.
If you do not want to enable scallar classes then this functions
should be removed from hbextern.ch. We can also hide them by some
macro, f.e.:
#ifdef HB_REQUEST_SCALLAR
EXTERNAL HBSCALAR
EXTERNAL HBARRAY
EXTERNAL HBBLOCK
EXTERNAL HBCHARACTER
EXTERNAL HBDATE
EXTERNAL HBLOGICAL
EXTERNAL HBNIL
EXTERNAL HBNUMERIC
#endif
best regards,
Przemek
_______________________________________________
Harbour mailing list
[email protected]
http://lists.harbour-project.org/mailman/listinfo/harbour