Keep Server Online
If you find the Apache Lounge, the downloads and overall help useful, please express your satisfaction with a donation.
or
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.
| |
|
Topic: Adjusting Apache's "MSVCR" Dependencies |
|
Author |
|
icbrainy
Joined: 28 Dec 2012 Posts: 5
|
Posted: Sun 30 Dec '12 15:20 Post subject: Adjusting Apache's "MSVCR" Dependencies |
|
|
Hi guys,
I have used Apache for a fair amount of time but the only thing that really becomes a headache is these MSVCR runtime dependencies.
Is it theoretically possible for me to make an x64 build of apache that doesn't use these VC runtime dependencies so that I don't have to keep installing these runtimes on just about every machine I run it on? Even making Apache reference a "local" copy of the DLL (in the same folder as the EXE itself) would be perfectly fine.
If it helps, I am aware of a "msvcrt.dll" that exists in the system32 folder from XP onwards, and while I was compiling a "hello world win32 C program" this DLL only appeared in "resource monitor"'s "Modules listing section when I began referencing APIs in the OS DLLs, such as user32.dll and shell32.dll.
The reason why that i need to build apache this way is because I'm using this for a Multiverse-powered (multiversemmo.com) server, and I'm trying to make any "system migration" down-times to a downright minimum.
If it helps, my project only uses these ".so" files:mod_authz_core
mod_buffer
mod_dir
mod_headers
mod_mime Any help would be greatly appreciated. |
|
Back to top |
|
glsmith Moderator
Joined: 16 Oct 2007 Posts: 2268 Location: Sun Diego, USA
|
Posted: Sun 30 Dec '12 18:16 Post subject: |
|
|
Built with VC6, it will use the msvcrt.dll in your system32 folder.
Built with VC10, you should only need to have msvcr100.dll in Apache's bin folder. Of course, if you use php, you need to install the vc9 redistributable.
Therefore, at least a vc9 Apache + php only requires the single installed redist.
There supposedly is a way to build Apache with the MS DDK (for building drivers) that doesn't link to a specific crt ... I'd bet however it links to the msvcrt.dll.
Hate this? complain to Microsoft! Worse yet is the .NET shit, depending on version used to build an app, you could need 3 or 4 versions of the framework installed for all the different apps you are using ... and they're 80+ megs each. At least Apache isn't Apache.Net! |
|
Back to top |
|
icbrainy
Joined: 28 Dec 2012 Posts: 5
|
Posted: Sun 30 Dec '12 21:18 Post subject: I think i'm doing this wwwrrrroooonnnnggg...... |
|
|
Hnn....
Since reading your reply, I went and downloaded the official 2.4.3 source code from the official httpd website, and tried to get my software environment (VC2005) to convert it to a VC2005 project. It asks: Quote: | The project 'httpd.dsp' must be converted to the current Visual C++ project format. After it has been converted, you will not be able to edit this project in previous versions of Visual Studio.
Convert and open this project?
( Yes ) ( No ) ( Yes To All ) ( No To All ) | I replied "Yes To All", but it responds with a flurry of errors saying: Quote: | Cannot load the project due to a corrupt project file. |
The only filetypes currently my system recognises in the root of the code folder are DSW (VC++ 6 Workspace) and DSP (VC++ 6 Project) files.
Am I doing this completely wrong?
What you said at the end of your post glsmith is the exact reason why I moved away IIS and ASP.NET to HTTPD and PHP, I wasn't exactly "happy" with it's efficiency and flexibility.
Admin note:
Please open a new thread, your question does not fit the subject. |
|
Back to top |
|
Jan-E
Joined: 09 Mar 2012 Posts: 1266 Location: Amsterdam, NL, EU
|
Posted: Sun 30 Dec '12 21:56 Post subject: |
|
|
glsmith wrote: | Of course, if you use php, you need to install the vc9 redistributable.
Therefore, at least a vc9 Apache + php only requires the single installed redist. | The builds at Apachehaus are still VC9, so they are the easiest to install on new machines.
http://www.apachehaus.com/cgi-bin/download.plx |
|
Back to top |
|
Steffen Moderator
Joined: 15 Oct 2005 Posts: 3092 Location: Hilversum, NL, EU
|
|
Back to top |
|
glsmith Moderator
Joined: 16 Oct 2007 Posts: 2268 Location: Sun Diego, USA
|
Posted: Mon 31 Dec '12 9:20 Post subject: |
|
|
Cannot load the project due to a corrupt project file.
Usually is a line endings problem. I just added a section in the trunk docs on compiling from unix sources, you should look at it.
http://httpd.apache.org/docs/trunk/platform/win_compiling.html
I see I need to make a small change there, "You can now build the server with the Visual Studio development ..." that should be Visual Studio 6. You will also need to run the cvtdsp.pl for anything above VS6.
perl srclib\apr\build\cvtdsp.pl -2005
per later in the docs about IDE build. |
|
Back to top |
|
icbrainy
Joined: 28 Dec 2012 Posts: 5
|
Posted: Mon 31 Dec '12 15:39 Post subject: |
|
|
Ok, now this is beginning to make sense. I appreciate your time and expertise, thank yous very much.
Please pass on my apologies to forum management for posting this in the wrong section. |
|
Back to top |
|
|
|
|
|
|