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: Making builds XP compatible (simple)
Author
DR_LaRRY_PEpPeR



Joined: 26 Nov 2015
Posts: 7

PostPosted: Wed 02 Dec '15 6:05    Post subject: Making builds XP compatible (simple) Reply with quote

Hi Steffen, all,

Newly registered here after meaning to for a long time (mostly about myself providing PHP releases that work on XP!).

First I also wanted to point out about the Apache builds here with the "latest" Visual Studio versions... I had been using 2.2 since several years ago, and last year when I finally wanted to grab the latest from here, I figured I was out of luck on XP unless I used the VC10 builds, or built Apache myself with changes as needed for PHP.

BUT! After my experience with PHP stuff, I tried the simplest thing first with the VC11 builds (then, and now VC14 recently). I was pleasantly surprised that everything seems to work fine on XP (I just have a basic setup and haven't tried anything "exotic"). Very Happy

So Apache (+ stuff) isn't actually using anything from newer Windows versions (the loader doesn't complain with any DLLs I tried), unlike what it suggests on the Download pages. And the latest VC++ runtime still works on XP, even if it can use newer editions' "internal features" (*shrug*).

And what does "makes more use of modern processors" mean...? Not compiled with /arch:AVX[2] right? Wink Again, not related to XP anyway.


Anyway, the simple fix to allow XP is setting the proper version header thing on the EXEs. It just changes 1 byte I think. I used editbin with /SUBSYSTEM:Console,5.01 on the downloads.

So all that needs to be done to save that step after-the-fact is adding the linker flag /SUBSYSTEM:Console,5.01 to your build process! Smile (I've never compiled Apache, so don't know anything about it.)

That only matters on the executables themselves, since the loader doesn't seem to check what version DLLs indicate.


Thoughts? Or are there other reasons you want to prevent XP by default? Shocked
Back to top
James Blond
Moderator


Joined: 19 Jan 2006
Posts: 7288
Location: Germany, Next to Hamburg

PostPosted: Fri 04 Dec '15 16:30    Post subject: Reply with quote

Is there any test download? I'd like to test that on my XP VM.
Back to top
DR_LaRRY_PEpPeR



Joined: 26 Nov 2015
Posts: 7

PostPosted: Sun 06 Dec '15 21:40    Post subject: Reply with quote

If by "that," you mean ready-to-use XP-compatible binaries, I can modify the latest build from here later and upload it for you/anyone. Smile

But if you mean making them compatible yourself, it just takes a few seconds with editbin like I said. (Not sure if it's available [easily] outside of the Visual Studio installation...)
Back to top
James Blond
Moderator


Joined: 19 Jan 2006
Posts: 7288
Location: Germany, Next to Hamburg

PostPosted: Thu 10 Dec '15 19:06    Post subject: Reply with quote

I have VS installed. AFAIK I would need editbin for every file including the dll's and so files.

I wonder why you needed that. XP and 2003 (/R2)are way outdated.
Back to top
glsmith
Moderator


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

PostPosted: Thu 10 Dec '15 22:32    Post subject: Reply with quote

VC 11-14 can be set to compile for XP, and VC14 came out a year after XP went EOL. I suppose even MS realized not everyone would march to the beat of their upgrade drum.
Back to top
Kanashii



Joined: 17 Jul 2006
Posts: 155
Location: Porando

PostPosted: Fri 11 Dec '15 13:35    Post subject: Reply with quote

Hello again Razz

XP is dead but has small footprint, mem, no need superhiper GPU etc so its preaty amazing for VM

So i think PHP7 + XP is a good combination Razz
Back to top
glsmith
Moderator


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

PostPosted: Sun 13 Dec '15 10:21    Post subject: Reply with quote

Technically speaking, Windows XP is not quite dead. XP Embeded goes EOL soon on 1/12/2016.
Back to top
Kanashii



Joined: 17 Jul 2006
Posts: 155
Location: Porando

PostPosted: Sun 13 Dec '15 16:34    Post subject: re; Reply with quote

Yes but I don;t mind Smile you can still use some anti-rootkin protection like "Malwarebyte anti-exploit" run as user and harden it.
Back to top
Kanashii



Joined: 17 Jul 2006
Posts: 155
Location: Porando

PostPosted: Thu 17 Dec '15 23:43    Post subject: re Reply with quote

pathed by:
editbin.exe php.exe /SUBSYSTEM:CONSOLE,5.01 /OSVERSION:5.1

Edit link and link.exe is part of visual studio e.g 2008

__

Some error on my XP:

the procedure entry point inet-pton could not be ocated in the dynamic link library WS2_32.dll

WS2_32.dll is located in system32:
5.1.2600.5512 (xpsp.080413-0852)

So i think we need compile PHP with this options:

https://social.msdn.microsoft.com/Forums/vstudio/en-US/e40465f2-41b7-4243-ad33-15ae9366f4e6/winsock2-error-the-procedure-entry-point-xxxx-cold-not-be-located-in-ws232dll?forum=vcgeneral
Back to top


Reply to topic   Topic: Making builds XP compatible (simple) View previous topic :: View next topic
Post new topic   Forum Index -> Building & Member Downloads