Installing the W3C Validator on Windows

I have successfully installed version 1.183 of the Validator on Windows 2000
with Visual Studio.  Here is a draft of the procedure:



Installation on Windows (NT4 or 2000) with IIS and Visual Studio (6 or
.NET).

-	The packages I used were:
	ActivePERL 5.6.0.623
http://www.activestate.com/ActivePerl/
	validator.tar.gz (1.183)		http://validator.w3.org/
	libiconv-1.7.tar.gz		ftp://ftp.gnu.org/pub/gnu/libiconv/
	Text-Iconv-1.2.tar.gz
http://www.cpan.org/modules/by-module/Text/
	HTML-Tagset-3.03.tar.gz
http://www.cpan.org/modules/by-module/HTML/
	HTML-Parser-3.26.tar.gz
http://www.cpan.org/modules/by-module/HTML/
	sp1_3_4.zip
http://www.jclark.com/sp/howtoget.htm

-	Install ActivePERL.  It includes the LWP module.

-	Use perl -V:make to find the local alias for make (usually nmake
with Visual Studio).

-	You can't build libiconv as a dynamic library; you end up with two
different iconv.dll's, which confuses PERL (and anybody who has to maintain
the system).  This means Text-Iconv must be linked with libc.lib, which
exports _errno.  To do this you may need to edit config.PM (in PERL\lib):
change -MD in ccflags to -ML, delete -MD from optimize, change msvcrt.lib in
libs to libc.lib and change libc to libc.lib.

-	Unpack libiconv to a temporary folder then build and install a
static library according to README.win32.

-	Unpack Text-Iconv to a temporary folder.  Add -liconv to LIBS in
Makefile.PL.  Build and install according to the README.

-	Unpack HTML-Tagset to a temporary folder.  Build and install
according to the README.

-	Unpack HTML-Parser to a temporary folder.  Build and install
according to the README.

-	Extract validator.tar.gz to a temporary folder.  Ignore the "file
already exists" errors.  It includes a collection of DTDs and other SGML
files to validate against.

-	Create a folder to publish the Validator from (I used
C:\Inetpub\HTMLValidator).  Copy the contents of the validator\htdocs folder
to it.  Copy the validator\httpd\cgi-bin folder to the HTMLValidator folder.
You can delete the CVS files and folders.

-	Extract SP to a temporary folder and copy the files in the bin
folder to cgi-bin.

-	Change the form action in index.html and file-upload.html to
"/cgi-bin/check.pl" and rename check to check.pl (does IIS support content
negotiation?)

-	In check.pl modify the following lines:
19-21:	my $base_path = 'C:\\Inetpub\\HTMLValidator\\';
23:	my $html_path = $base_path;
31:	my $temp      = "C:\\Temp\\HTMLValidator.$$"; # @@ Use
POSIX/IO::File tmpfiles instead!
35:	my $sp  = 'C:\\Inetpub\\HTMLValidator\\cgi-bin\\nsgmls';
36:	my $osp = 'C:\\Inetpub\\HTMLValidator\\cgi-bin\\nsgmls';
43:	  print "  <form method='get' action='/cgi-bin/check.pl'><table
class='header'>\n";

-	Create a new website called HTMLValidator, with script access and
the home directory as above.  Make index.html the default page.  Browse it.

-	Happy validating!



Regards
Scott Forbes

Software Engineering Specialist,
Rational Software
This email, (including any other information transmitted with or attached to
this email), is intended only for the addressee(s) or such other persons
notified by Rational to the addressee(s). It should not be copied, changed
or communicated to an unauthorised recipient without the express written
consent of Rational. This email is also confidential, subject to copyright,
and may be subject to legal or other professional privilege. None of these
rights, or any other rights, are waived if you have received this email in
error or without our permission. This email, or elements of this email, may
have been sent, intercepted, or modified in transit, in error or without our
permission, and may contain viruses or other information that we did not
intend you to receive. The views expressed in this email are not necessarily
the views of Rational. We accept no liability for loss or damage resulting
from the receipt or use of this information by you or third parties. If you
have received this email in error, any use (including discussion of its
contents), reproduction, transmission or communication of this information
is strictly prohibited and we request that you immediately notify us and
delete this email, and all copies of it, within your control.

Received on Thursday, 23 May 2002 14:29:25 UTC