Difference between revisions of "How to build AOLserver on Win32"
(imported from WiKit id 1332) |
Neustradamus (talk | contribs) m |
||
Line 49: | Line 49: | ||
'''CAVEATS''' | '''CAVEATS''' | ||
− | [http://support.microsoft.com/?kbid=314882 | + | [http://support.microsoft.com/?kbid=314882 314882 - Inbound Connections Limit in Windows XP] - In benchmarking the latest builds, I ran into a problem where setting concurrency above 5 (I'm using WinXP) results in every connection being refused and failing. Apparently, after Win9x, Microsoft has crippled the IP stack with this licensing restriction in the non-"Server" versions of their operating systems. This is a terrible shame. However, there ought to be a way to configure AOLserver to stay "within the limits" and not try to accept more connections than allowed, otherwise once incoming traffic exceeds the limit, ALL connections get dropped -- very unreasonable behavior. |
---- | ---- |
Latest revision as of 22:36, 29 September 2009
> Are the Windows makefiles (or whatever) and build instructions in CVS > yet?
The build script is in CVS HEAD (win32/build.tcl) but there are NO instructions yet. Expect to see a "How to build AOLserver on Win32" page on the wiki, soon. :-)
The short explanation:
AOLserver can now be built on Win32 as native binaries with completely free (no cost) tools from Microsoft. You will need:
- Microsoft Visual C++ Toolkit 2003
- Microsoft Windows Platform SDK
- Microsoft .NET Framework SDK Version 1.1
You'll need to jump through some hoops to configure your environment variables correctly, as well as copying msvcrtd.lib from the .NET Framework lib/ directory into your VC++ lib/ directory, as well as some other things that I didn't keep track of. If you run into problems, just ask.
(I should probably add notes in here about how to build Tcl, too. In the meantime, here's a link to the Tcl'ers Wiki: Building Tcl with the free VC++ toolkit.)
C:\> vcvars32.bat
C:\> cd \path\to\aolserver\source
C:\...> tclsh win32\build.tcl
... build output scrolls by ...
C:\...> tclsh win32\build.tcl install
... installation output scrolls by ...
C:\...> cd installed
C:\...\installed> bin\nsd.exe -ft sample-config.tcl
At this point, you should be up and running.
NOTES:
1. vcvars32.bat (or whatever it's called) ensures that cl.exe and link.exe are in your PATH, that INCLUDE and LIB variables are set to the appropriate location where VC++'s include and libraries live.
2. The build.tcl script currently assumes that Tcl was built in ..\tcl_core-8-4-6 (relative to the top of the AOLserver source directory) and when you built Tcl, you did a "nmake -f makefile.vc install INSTALLDIR=installed" so that Tcl was installed into ..\tcl_core-8-4-6\win\installed. That's just how my build environment is set up -- I plan to enhance the build.tcl script to let you pass in the path to the Tcl install from the command line, but for now it's hard-coded in.
3. Also, sample-config.tcl from CVS HEAD will work, but the one in the aolserver_v40_bp branch will NOT -- I didn't backport the "fix" to the script yet.
4. I use Cygwin "cvs" to check the code out of CVS, then start a regular DOS "cmd.exe" shell to do the actual build.
CAVEATS
314882 - Inbound Connections Limit in Windows XP - In benchmarking the latest builds, I ran into a problem where setting concurrency above 5 (I'm using WinXP) results in every connection being refused and failing. Apparently, after Win9x, Microsoft has crippled the IP stack with this licensing restriction in the non-"Server" versions of their operating systems. This is a terrible shame. However, there ought to be a way to configure AOLserver to stay "within the limits" and not try to accept more connections than allowed, otherwise once incoming traffic exceeds the limit, ALL connections get dropped -- very unreasonable behavior.
Question: Have you tried to build nsjk2 yet? pgw
Dossy 26jul04 - No, I haven't, yet. Are you interested in it (i.e., would you do the testing) since I have little experience with nsjk2 and there's probably zero interest within AOL to see nsjk2 on Win32 (although I haven't asked around yet) ... so any testing of nsjk2 on Win32 will be community-driven if at all.