From Mon Jan 16 04:25:39 2006 Return-Path: Delivered-To: Received: (qmail 48617 invoked from network); 16 Jan 2006 04:25:39 -0000 Received: from (HELO ( by with SMTP; 16 Jan 2006 04:25:39 -0000 Received: (qmail 55444 invoked by uid 500); 16 Jan 2006 04:25:36 -0000 Delivered-To: Received: (qmail 55331 invoked by uid 500); 16 Jan 2006 04:25:35 -0000 Mailing-List: contact; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Id: Delivered-To: mailing list Received: (qmail 55293 invoked by uid 99); 16 Jan 2006 04:25:35 -0000 Received: from (HELO ( by (qpsmtpd/0.29) with ESMTP; Sun, 15 Jan 2006 20:25:35 -0800 X-ASF-Spam-Status: No, hits=-0.0 required=10.0 tests=SPF_PASS X-Spam-Check-By: Received-SPF: pass ( domain of designates as permitted sender) Received: from [] (HELO ( by (qpsmtpd/0.29) with ESMTP; Sun, 15 Jan 2006 20:25:32 -0800 Received: by with SMTP id i20so957851wra for ; Sun, 15 Jan 2006 20:25:09 -0800 (PST) DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=beta;; h=received:message-id:date:from:sender:to:subject:mime-version:content-type:content-transfer-encoding:content-disposition; b=jaftxGNZFyWK2SpBlrwBce7xJXPIwNKi2XGkUxVl9p9rdQVqkC8pD+MWLOWaKJ//tM6b/WC6kh0HD7+WF592aTO9xQ5ALkXui1tcITAu+d8cO7tCwAH6aa4C0LXsezuWIqCNy06Gk+9Csdx7A8Sc1Ywa/WXjtYhwh2k5B+xpOqM= Received: by with SMTP id s19mr4240484wra; Sun, 15 Jan 2006 20:25:09 -0800 (PST) Received: by with HTTP; Sun, 15 Jan 2006 20:25:09 -0800 (PST) Message-ID: <> Date: Sun, 15 Jan 2006 20:25:09 -0800 From: Garrett Rooney Sender: To: HTTPD Dev List , APR Developer List Subject: The Win32 Build, Visual Studio Versions, etc. MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Content-Disposition: inline X-Virus-Checked: Checked by ClamAV on X-Spam-Rating: 1.6.2 0/1000/N So I played around with getting HTTPD to build on a windows machine today, using only the freely available "Express" version of Visual C++ that Microsoft released a little while back. It works, basically, but it's not nearly as easy as it should be, for a few reasons. The major problems is that the conversion from the existing .dsp files over to VS.Net .sln and .vcproj files doesn't seem to work perfectly.=20 Specifically, the libs that various targets are linked against don't seem to get migrated perfectly, so you have to go add a few .libs to libapr, libhttpd, a bunch of the command line tools, the win32 specific programs, and probably some more places I can't recall. Aside from this hurdle, the major problem with getting this stuff to build was simply that the targets describe in the build instructions include targets that run _build, which tries to run visual studio using the vc6 (I think) command line tool, which doesn't work with newer visual studio versions. It's possible to work around this by running the build by hand, then calling _install directly to build the dist tree, but it's a bit of a pain. I didn't actually go so far as to try building the APR tests, but I imagine they'd probably suffer similar problems to the httpd command line tools. So I guess what I'm asking is has anyone else spent any time working with these compilers? Is there any way we can make the use of them easier? I'd love for it to be a reasonably well defined set of steps for an APR or HTTPD developer to actually get things running on Win32, and if those instructions start with "go download this free thing from microsoft" as opposed to "go shell out a few hundred bucks for visual studio" it'll probably encourage people to actually do some work on the win32 code, which is a bit underloved lately IMO. If there isn't an easy way we can make our current system of .dsp files convert easily into VC.Net Express projects, then I'm curious if we couldn't start thinking about either maintaining parrallel build files for newer Visual Studio versions, or even better just switching to it as the default on win32. I'm sure that I recall various issues that make it desirable to use earlier versions of visual studio, but are these issues really insurmountable? -garrett