VC6 vs VC9

VC6 vs VC9

am 06.02.2009 02:48:04 von Louis

Hi,

based on comments on http://windows.php.net/qa/ ...

why is the VC9 build compiled to used the CRT as DLLs instead of static?
yet I gather the VC6 isn't?

why can't the VC9 build be used with apache.org binaries?

and why do you have both a VC6 and a VC9 build?

just curious.

Louis



--
PHP Windows Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

RE: VC6 vs VC9

am 06.02.2009 10:31:43 von Mario Brandt

------_=_NextPart_001_01C9883E.31749432
Content-Type: text/plain;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

Hi Louis,

>why can't the VC9 build be used with apache.org binaries?

The build from apache.org is build with VS6. If you wanna try a VS9 =
build
from httpd you can try the build from apachehaus.com For me it works =
well
on Windows 2003 and Windows 7

>why is the VC9 build compiled to used the CRT as DLLs instead of =
static?

For most windows users it is easier to enable a dll as extension than =
compile it ;-)

>why do you have both a VC6 and a VC9 build?

I guess VS6 for compability and VS9 is the future.

regards
Mario


-----Ursprüngliche Nachricht-----
Von: Louis Solomon [SteelBytes] [mailto:louis@steelbytes.com]
Gesendet: Fr 06.02.2009 02:48
An: php-windows@lists.php.net
Betreff: [PHP-WIN] VC6 vs VC9
=20
Hi,

based on comments on http://windows.php.net/qa/ ...

why is the VC9 build compiled to used the CRT as DLLs instead of static? =

yet I gather the VC6 isn't?

why can't the VC9 build be used with apache.org binaries?

and why do you have both a VC6 and a VC9 build?

just curious.

Louis
=20


--=20
PHP Windows Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



------_=_NextPart_001_01C9883E.31749432--

Re: VC6 vs VC9

am 06.02.2009 21:37:18 von Evan Burkitt

""Louis Solomon [SteelBytes]"" wrote in message
news:C66C95C4B9354B6681CF7CC24F8F029B@steelbytes.local...
> Hi,
>
> based on comments on http://windows.php.net/qa/ ...
>
> why is the VC9 build compiled to used the CRT as DLLs instead of static?
> yet I gather the VC6 isn't?

I'm sure they both dynamically link to the CRT. When an application uses
numerous DLLs and they each dynamically load the CRT, the CRT code is loaded
once and all application binaries share a single memory heap. This means
memory can be malloc()ed in one DLL and free()d in another. A static link to
the CRT would not allow this, and would mean a copy of the CRT code would
exist in each DLL. (By 'not allow' I mean memory corruption and crashes.
Unfortunately the code will compile and link without incident.)
>
> why can't the VC9 build be used with apache.org binaries?

Apparently apache.org's binaries are compiled w/ VC6. Mixing
dynamically-loaded CRT versions creates a similar situation as statically
linking it: separate heaps, meaning cross-binary memory management will
cause heap corruption. Just as insidious is the possible difference in
object size between the two CRT versions. If DLL A assumes a certain object
is, say, 8 bytes and DLL B assumes 16 bytes, disaster is virtually assured.

-Evan



--
PHP Windows Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php