Re: [ROOT] building from source on Win32

From: Valeri Fine (Faine) (fine@bnl.gov)
Date: Tue Dec 26 2000 - 16:14:36 MET


Hello, Dave 


> 
> In config/Makefile.win32, there is another apparent typo (actually several
> instances of one typo):
> 
>  -DCRTAPI1=_cdelc
> 
> I think "_cdelc" should be "_cdecl"; not clear whether this does any actual
> harm.

 Normally all of these macros should come from %INCLUDE%/win32.mak file
Since GNU make can not "read" NMAKE include file directly one did copy staff from 
there "by hand" .

 Typo may cause a side effect (like the stack overflow for example)

 
> The -L option to the ld command is not recognized on win32.  This is coded
> into $(ROOTSYS)/configure
 > The correct syntax on Windows is "-LIBPATH:", I think; not clear whether
> this does any actual harm either.

 Myself  did not investigate CYGWIN layer that ROOT team has adopted to build ROOT.
 It should map "L" to "LIBPATH" properly. It sounds like Cygnus's bug.

> Finally, does anyone understand all the "inconsistent dll linkage. dllexport
> assumed" warnings which occur?

Yes, one does.
It is the correct and expected message. This message is provided when one compiles 
the source code with some global variable definition. At this point there is a mismatch between 
that variable *declaration* in the header file (there it is defined as "external import DLL")  and 
the source code *definition*  (there it is defined "export DLL"). At this point the compiler 
makes  a choice in favor of the source code. This is why "dllexport assumed"

One can avoid these messages providing a bunch of #ifdef's (or separate header file). 
However I think it doesn't worth to try..

 
> Thanks,
> 
> Dave
> dcasper@uci.edu
> 
> 



This archive was generated by hypermail 2b29 : Tue Jan 02 2001 - 11:50:40 MET