logo
Apache Lounge
Webmasters

 

About Forum Index Downloads Search Register Log in RSS X


Keep Server Online

If you find the Apache Lounge, the downloads and overall help useful, please express your satisfaction with a donation.

or

Bitcoin

A donation makes a contribution towards the costs, the time and effort that's going in this site and building.

Thank You! Steffen

Your donations will help to keep this site alive and well, and continuing building binaries. Apache Lounge is not sponsored.
Post new topic   Forum Index -> Building & Member Downloads View previous topic :: View next topic
Reply to topic   Topic: Issues compiling Apache 2.4.10 on Windows x64
Author
avogler



Joined: 26 Jan 2015
Posts: 2
Location: United States

PostPosted: Tue 27 Jan '15 15:57    Post subject: Issues compiling Apache 2.4.10 on Windows x64 Reply with quote

Background: Recently the Apache server I was using started giving the error: "err/hup on backcon". Through google, I found a patch that would fix this issue. In order to apply the patch to the single module that I needed to change (mod_proxy_connect), I needed to be able to compile Apache, instead of using a precompiled binary like I had previously.

I used the guide https://blog.redhoundsoftware.com/?p=131 to compile in x32.

Compiling: Through the help of google, and these forums, I managed to apply the changes from the patch and compile the module that I needed to update. However, everything that I used to do so was x32. I need to be able to compile it in x64.

The Issue: I thought that compiling in x64 would be as simple as switching the target build in Visual Studio 2010 from Win32 to x64.

I was wrong.

When I do so, only 18 of the 150 projects have the option to build in x64. The rest only allow me to build them as Win32.

My Question: Is there a known workaround for this issue? Are there other steps that I need to take in order to be able to compile Apache as x64? If it matters at all, all I need to do is compile the mod_proxy_connect module.
Back to top
glsmith
Moderator


Joined: 16 Oct 2007
Posts: 2268
Location: Sun Diego, USA

PostPosted: Tue 27 Jan '15 20:30    Post subject: Reply with quote

I keep and maintain a copy of command line makefiles which work on any VC version/architecture. I'd petition to have these added to the source but they would probably conflict with the new cmake build (which has never worked out well for my specific needs).

nmake /f makefile.win instdir=\Apache2410 installr

Edit: makefiles now included in Apache sources

I use these for VC10 & 12 which seem to be the only versions of VC that give me problems. 2013 has had something fixed and I have no conversion problems on it.


Last edited by glsmith on Sun 26 Feb '17 21:41; edited 1 time in total
Back to top
avogler



Joined: 26 Jan 2015
Posts: 2
Location: United States

PostPosted: Tue 27 Jan '15 22:26    Post subject: Reply with quote

I appreciate the make files, but I would like to find a way to compile Apache through the VS ide.

Would it be a better approach to use VS 2013?
Back to top
glsmith
Moderator


Joined: 16 Oct 2007
Posts: 2268
Location: Sun Diego, USA

PostPosted: Tue 27 Jan '15 23:30    Post subject: Reply with quote

No, it just cleanly converted the dsp files for me as I do not remember having any problems with it. That was months ago but I usually do remember what gives me grief.

It does have a problem with apr_atomic which I still have not decided the best route to go to fix it. I do know that what it is failing on is something so old it should be removed since the comments about it are for a VC6 setup (basically out of the box) that is not capable of compiling apr_ldap anyway.
Back to top
Jan-E



Joined: 09 Mar 2012
Posts: 1248
Location: Amsterdam, NL, EU

PostPosted: Sun 01 Feb '15 2:19    Post subject: Reply with quote

glsmith wrote:
https://www.apachehaus.net/misc/mak24.zip

Did you have to change anything in those makefiles to compile Apache 2.4.12? If so, which changes?
Back to top
glsmith
Moderator


Joined: 16 Oct 2007
Posts: 2268
Location: Sun Diego, USA

PostPosted: Sun 01 Feb '15 11:08    Post subject: Reply with quote

Jan-E wrote:
Did you have to change anything in those makefiles to compile Apache 2.4.12? If so, which changes?


I did for 2.4.11 and it was most likely to coincide with this commit to pick up mod_status.h
http://svn.apache.org/r1644247
due to: http://svn.apache.org/r1634527

Since these makefiles are typically for my personal use and so rarely need changing I do not keep them in any version control system.
Back to top
wangmaster



Joined: 25 Feb 2015
Posts: 12

PostPosted: Thu 26 Feb '15 17:17    Post subject: Reply with quote

Is there any tooling or anything that you'd be willing to make available to help generate the makefile/dsp changes? Or is this really something that's pretty trivial if someone actually understood visual studio?

disclaimer - I'm a unix guy and thrown into having to build/maintain a windows build so I honestly have zero clue how any of the toolchain even remotely works on Windows. I've followed various instructions (as well as some you've provided as well) to get a 32-bit build from stock Apache httpd tarballs (and the usual dependencies - openssl, zlib, pcre, apr-iconv) but I'm completely lost how to get this to work with 64-bit.

I think I know enough to know that from this quote in a different post:

Quote:
Ugh, I forgot about that. While the APRs have a x64 build target, httpd does not. So it's really seeing x86. I've never had much luck with the IDE post 2008 even though I do have a script that converts the dsp files to x64 so I simply do not build in 2012 with the IDE, instead I build from the VS 2012 x64 command line using these sources;


and this particular topic that the issue is that there are changes necessary beyond adding a x64 configuration. Smile

I absolutely appreciate all the information I've been able to glean from this and that you have made your build files available (I was able to successfully build with your buildfiles with VS2010) I've been trying to understand how to generate these artifacts myself - both to learn, and to not have a single point of failure Smile

Any pointers or tips or anything that you can provide, scripts, etc that would help with the process of generating what you generate on my own?

Thanks much.
Back to top
glsmith
Moderator


Joined: 16 Oct 2007
Posts: 2268
Location: Sun Diego, USA

PostPosted: Thu 26 Feb '15 20:13    Post subject: Reply with quote

Those mak/dep files are generated on an old version of Visual Studio (6) which was the last version to generate them and they have been filtered somewhat after that (removing the x86 specific flags, making mod_ssl not dependent on any single version and changing hard coded paths to relative ones).

Since you're basically starting from scratch, you may want to give the cmake build a try. As a unix person you may understand it better and it should be fine if you're just trying to build on a single architecture.
Back to top
wangmaster



Joined: 25 Feb 2015
Posts: 12

PostPosted: Thu 26 Feb '15 20:46    Post subject: Reply with quote

The problem I have with cmake is I believe it doesn't support apr-iconv and isn't that necessary for the charset features? (AddDefaultCharset AuthLdapCharsetConfig)?
Back to top
wangmaster



Joined: 25 Feb 2015
Posts: 12

PostPosted: Thu 26 Feb '15 22:04    Post subject: Reply with quote

I just tried to do this with cmake and I'm royally confused. I'll start a new topic and hope for some help Smile
Back to top


Reply to topic   Topic: Issues compiling Apache 2.4.10 on Windows x64 View previous topic :: View next topic
Post new topic   Forum Index -> Building & Member Downloads