From: | Magnus Hagander <magnus(at)hagander(dot)net> |
---|---|
To: | Alvaro Herrera <alvherre(at)commandprompt(dot)com> |
Cc: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Pg Hackers <pgsql-hackers(at)postgresql(dot)org>, meskes(at)postgresql(dot)org |
Subject: | Re: ecpg generated files ignorable? |
Date: | 2008-06-28 13:33:23 |
Message-ID: | 48663DA3.9060609@hagander.net |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Alvaro Herrera wrote:
> Michael Meskes wrote:
>> Well, in my source tree I have two, one for MS VC++ and one for Borland
>> C++ Builder. And yes, I can build a third one for MS VC++ as well by
>> just issuing the corresponding make call. However, I have no idea
>> whether we need both, the only differ in the lib name:
>> --- libecpgddll.def 2008-06-20 12:33:29.000000000 +0200
>> +++ libecpgdll.def 2008-06-20 12:33:16.000000000 +0200
>> @@ -1,5 +1,5 @@
>> ; DEF file for MS VC++
>> -LIBRARY LIBECPGD
>> +LIBRARY LIBECPG
>> EXPORTS
>> ECPGallocate_desc @ 1
>> ECPGconnect @ 2
>>
>> Maybe someone with more Windows knowledge can explain this? Magnus?
(without looking at the actual code :-P):
LIBRARY should match the name of the DLL file. LIBECPGD is the debugging
version, which is the one linked against the debugging version of the
runtime. It needs to exist in any case where CRT pointers (FILE*,
va_args, things like that) is passed between DLLs. If one is linked
against release and one against debug, a crash will occur, so to build
you need to have a debug-linked version of the DLL as well.
Wow. That turned into quite a messy explanation, I hope it's readable :)
//magnus
From | Date | Subject | |
---|---|---|---|
Next Message | Magnus Hagander | 2008-06-28 13:34:32 | Re: pgsql: Make the pg_stat_activity view call a SRF |
Previous Message | Magnus Hagander | 2008-06-28 13:31:09 | Re: stat() vs cygwin |