On 12/18/2012 9:00 AM, Yehuda Katz wrote:
On Tue, Dec 18, 2012 at 11:24 AM, Andy Wang <[email protected]
<mailto:[email protected]>> wrote:
This was brought up a while ago that the Apache 2.4.x and 2.2.23
builds were lacking the win32 source bundle. There was some
discussion about how to build these bundles:
http://mail-archives.apache.org/mod_mbox/httpd-dev/201209.mbox/%3C506243E0.3050108%40apache.org%3E
I see no discussion on the source bundles, just mention that I also made
them and where I store them.
Is there anyway to make available the details of how these windows
src bundles are built for those of us that need to build our own?
I imagine if I knew Windows better it may be more obvious but I'm
really not a Windows developer and tend to just follow recipes
when trying to make dev stuff work on Windows.
The difference between the win32 and unix sources are the line endings
(Win's vs. Unix's) and the .mak & .dep files. These make & dependency
files have been exported from Visual C++ 6, which was the last version
that would export them.
For 2.2.23 you could take these files from the 2.2.22 win32 source,
nothing has changed that will affect the build. Unix sources do not
include apr-iconv so you could just drag the entire srclib\apr-iconv
folder from 2.2.22 into 2.2.23's srclib folder. apr-iconv has not
changed between the two Apache releases. At the command line run lineends
c:\httpd-2.2.23> perl srclib\apr\build\lineends.pl
Now you have a win32 source package of 2.2.23
For a Win32 IDE build, you can build straight from the Unix source
package. You just need to also download apr-iconv and run lineends on
entire unix source package.
I think half the trouble was actually getting it to compile reliably
on Windows. (I have not tried too hard, but I know I have not been
able to do it.)
You can find instructions for x64 builds at
http://wiki.apache.org/httpd/Win64Compilation
I don't know how different the x86 build would be.
One extra step in x64 and different command line arguments for building
openssl & zlib.
Where the above linked build instructions talk about making a store.h
file for OpenSSL 1.0.0, that and one other is needed for OpenSSL 1.0.1.
Neither are needed if built from the VC++ IDE.
There's a good set of x86 command line build instructions here:
http://wiki.apache.org/httpd/Win32VC9Build
There is also a section for building Apache in the forums at both Apache
Haus and Apache Lounge should one have problems.
Regards,
Gregg