How to build AOLserver on Win32

From AOLserver Wiki
Jump to: navigation, search
> 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:

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.


  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 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.


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.

Category Documentation - Tutorials