Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:27322 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 43362 invoked by uid 1010); 7 Jan 2007 09:08:49 -0000 Delivered-To: ezmlm-scan-internals@lists.php.net Delivered-To: ezmlm-internals@lists.php.net Received: (qmail 43347 invoked from network); 7 Jan 2007 09:08:48 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 7 Jan 2007 09:08:48 -0000 Authentication-Results: pb1.pair.com header.from=helly@php.net; sender-id=unknown Authentication-Results: pb1.pair.com smtp.mail=helly@php.net; spf=permerror; sender-id=unknown Received-SPF: error (pb1.pair.com: domain php.net from 81.169.182.136 cause and error) X-PHP-List-Original-Sender: helly@php.net X-Host-Fingerprint: 81.169.182.136 ajaxatwork.net Linux 2.4/2.6 Received: from [81.169.182.136] ([81.169.182.136:56129] helo=strato.aixcept.de) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id F1/13-10134-F98B0A54 for ; Sun, 07 Jan 2007 04:08:47 -0500 Received: from baumbart.mbo (dslb-084-063-003-135.pools.arcor-ip.net [84.63.3.135]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by strato.aixcept.de (Postfix) with ESMTP id 2EA6D35C1FD; Sun, 7 Jan 2007 10:08:44 +0100 (CET) Date: Sun, 7 Jan 2007 10:08:44 +0100 Reply-To: Marcus Boerger X-Priority: 3 (Normal) Message-ID: <1848119188.20070107100844@marcus-boerger.de> To: "Frank M. Kromann" Cc: Andi Gutmans , 'PHP Internals List' , 'Edin Kadribasic' In-Reply-To: <11681483788760000@9866357972520000.9866341568840000> References: <11681483788760000@9866357972520000.9866341568840000> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Subject: Re: [PHP-DEV] Windows build From: helly@php.net (Marcus Boerger) Hello Frank, same here, i even have both 7.0 and 7.1 installed. Small hint about that, one can set the registry to have the 6 project/solution files be opened with 6 and the others by the original tool (install 6 last or 6 first and then edit registry). best regards marcus Sunday, January 7, 2007, 6:39:38 AM, you wrote: > VC 6/7/8 can be installed on the same box (VC 6 does not install on Windows > Vista though). > My XP box has all three and I can build PHP with any of them by setting > the correct environment variables before calling the build scripts. > - Frank >> Btw, one more thing which we could consider doing (although it means > more >> work) is to do the nts build with VC 8 and the thread-safe build with VC > 6. >> It'd probably require another machine (either physical or virtual). >> >> > -----Original Message----- >> > From: Andi Gutmans [mailto:andi@zend.com] >> > Sent: Saturday, January 06, 2007 6:20 PM >> > To: 'Edin Kadribasic' >> > Cc: 'PHP Internals List' >> > Subject: RE: [PHP-DEV] Windows build >> > >> > Hi Edin, >> > >> > The 2% surprises me a lot. We got very different results but >> > it might be due to different hardware, OS (we use Windows >> > Server 2003) and different tests. Here's what we got (all >> > non-threadsafe): >> > >> > vc2005 intel msvc6 >> > bench 9.326 9.378 10.28 >> > hello 10.48 11.6 11.28 >> > xoops 67.82 69.49 81.34 >> > static 16.97 18.4 21.18 >> > qdig 63.52 67.05 69.57 >> > qdig2 14.4 15.61 19.04 >> > >> > Btw, today I never recommend running mod_php on Windows and >> > always point people to CGI or existing FastCGI implementations. >> > That said, I understand that you don't want to break things >> > right now and stick to VC 6. Although I know it can work in >> > some cases, I agree with you that running two CRTs is >> > probably not a great idea. While the interfaces of the CRT >> > functions might be identical, I am not sure all the >> > structures are the same and that could cause some ugliness if >> > we get structs like file handlers from the Apache executable >> > passed into PHP and vice-versa. >> > >> > It's something worth looking into but not something one would >> > want to rush for a minor version like 5.2.1. >> > >> > Andi >> > >> > > -----Original Message----- >> > > From: Edin Kadribasic [mailto:edin@krug.dk] >> > > Sent: Saturday, January 06, 2007 1:28 PM >> > > To: Andi Gutmans >> > > Cc: 'PHP Internals List' >> > > Subject: Re: [PHP-DEV] Windows build >> > > >> > > Hi Andi, >> > > >> > > Turns out the problem is that Apache is building their >> > binaries using >> > > VC6 so wrong CRT gets loaded. The only solution I found was to tell >> > > Windows to load Apache with msvcr80.dll instead of msvcr.dll by >> > > suppling a manifest file in Apache bin directory. If you crate >> > > Apache.exe.manifest that contains: >> > > >> > > > > > xmlns='urn:schemas-microsoft-com:asm.v1' >> > > manifestVersion='1.0'> >> > > >> > > >> > > > > > version='8.0.50608.0' processorArchitecture='x86' >> > > publicKeyToken='1fc8b3b9a1e18e3b' /> >> > > >> > > >> > > >> > > >> > > The Apache will load PHP and PHP will be able to load >> > extensions. It >> > > probably isn't good idea to force a different C Runtime on >> > Apache like >> > > this. >> > > >> > > Regarding performance, I found that on Zend/bench.php the >> > improvement >> > > was only marginal (2%) compared to huge increase >> > > (25-30%) when disabling thread support. >> > > >> > > http://edin.dk/archives/25-Benchmarks.html >> > > >> > > >> > > Edin >> > > >> > > >> > > >> > > Andi Gutmans wrote: >> > > > Hi Edin, >> > > > >> > > > Thanks for trying to get this to work! >> > > > >> > > > I think eventually it'll be the right move to go to VC8 >> > but I agree >> > > > that if it risks a successful 5.2.1 release then it might >> > > not be worth >> > > > doing that right now. If you can share with us a >> > > reproducing case we >> > > > can try and look into it and see if we can get it to work. >> > > So far we >> > > > have concentrated on CLI/CGI/FastCGi because that's the >> > > most feasible >> > > > way of running, but I agree that you also need to get the >> > > other methods to run. >> > > > >> > > > For those who are curious, there are some significant performance >> > > > improvements in VC8. Our tolower() optimization which is >> > > significant >> > > > is only for VC8, the compiler creates significantly >> > faster code (on >> > > > par with Intel C/C++ compiler), and I believe some of the CRT >> > > > functions like time() are also much faster. So I Best regards, Marcus