I have seen that the latest UnrealIRCd versions are built using a VC2012 or maybe VC2010 compiler and probably a v110_xp platform target? I am in the nice position of being able to get pretty much any VisualStudio version I want for free, so I thought I'd just recompile UnrealIRCd myself. That did work for both VS2010 and VS2008 (which is supposed to support Windows 2000 as a target) using additional libraries from [here] plus an OpenSSL version updated to 1.0.1g.
However, my resulting build will fail to run on an actual Windows 2000 Server SP4, which is fully updated and has the proper redistributables installed (VS2008 SP1). This is a very antique Pentium PRO machine, and since early Intel P6 chips have a level 2 cache TLB shootdown bug that prevents NT5.1 or newer NT kernels from running in SMP, I have to stay on Win2000 to be able to use multiple processors, as the NT5.0 kernel does not yet feature dirty TLB shootdown. Also, I cannot migrate to Linux or BSD UNIX, because I rely on some software that exists only in the Redmond world, so bad luck there I guess.
Now, how on earth can I compile the UnrealIRCd server for a Windows 2000 platform target? I have googled around like crazy, and for VC project files it seems to be very easy, but since this works with nmake and that plain makefile.win32, I have no idea as to how I could do that?
My binary does work on Windows XP, which is why I am assuming a v110_xp platform target. I guess I would need to change that to v90 and maybe do some other stuff to make the resulting code compatible with NT5.0 / Windows 2000.
Any ideas?! Or should I just try yet another even older compiler?
This is the error I am currently encountering when running the WIRCD.EXE binary:
Code: Select all
The procedure entry point getaddrinfo could not be located in ws2_32 dll
Thanks for any help!