W3c markup validator



I’ve been trying to install a copy of the w3c markup validator on my dreamhost account. Here’s a link to the instructions (which cannot be followed word-for-word considering I don’t have root access): http://validator.w3.org/docs/install.html.

I’ve gotten through installing most of the pre-requisites correctly, as far as I can tell. After retrieving the validator itself, I’m at the point where I should be able to run the check script. Although I did have to add these lines to the check file to use the perl modules I installed:

use lib ‘/home/user/validator/perlModules/Config-General-2.40/local/share/perl/5.8.4’;
use lib ‘/home/user/validator/perlModules/Encode-HanExtra-0.23/local/lib/perl/5.8.4’;
use lib ‘/home/user/validator/perlModules/Encode-JIS2K-0.02/local/lib/perl/5.8.4’;
use lib ‘/home/user/validator/perlModules/HTML-Encoding-0.60/local/share/perl/5.8.4’;
use lib ‘/home/user/validator/perlModules/sgml/local/lib/perl/5.8.4’;

I’ve added these one at a time to fix a few errors further down (basically, perl was looking for the modules outside of these folders as it is obviously not obvious they would be there). The last one, however, is not working out. This is supposed to be the SGML-Parser-OpenSP module. I get this error when running check:

…/…/…/live/cgi-bin/check http://www.google.com/

[Tue Nov 18 16:32:37 2008] check: Can’t load ‘/home/user/validator/perlModules/sgml/local/lib/perl/5.8.4/auto/SGML/Parser/OpenSP/OpenSP.so’ for module SGML::Parser::OpenSP: /home/user/validator/perlModules/sgml/local/lib/perl/5.8.4/auto/SGML/Parser/OpenSP/OpenSP.so: undefined symbol: _ZN15SGMLApplication11nonSgmlCharERKNS_16NonSgmlCharEventE at /usr/lib/perl/5.8/XSLoader.pm line 68.
[Tue Nov 18 16:32:37 2008] check: at /home/user/validator/perlModules/sgml/local/lib/perl/5.8.4/SGML/Parser/OpenSP.pm line 18
[Tue Nov 18 16:32:37 2008] check: Compilation failed in require at …/…/…/live/cgi-bin/check line 75.
[Tue Nov 18 16:32:37 2008] check: BEGIN failed–compilation aborted at …/…/…/live/cgi-bin/check line 75.

Now, I do not even know exactly what this means. My linux-intuition tells me that it could mean the libosp.so file is not being used for whatever reason (perhaps because I have it installed in my home directory, and it does NOT exist with all of the other shared libraries down in /usr/local/lib). However, I could also be completely wrong. In any case, I’ve tried a million and one things to get that libosp.so file used by Makefile in some way, and nothing is working but at the same time, I have no way of confirming whether or not what I have done has worked.

This seemed to be the most promising solution, altering the Makefile.PL (which generates the Makefile for this perl module) to say:
$options{LIBS} = “-lstdc++ -L/home/user/validator/opensp/lib”;
Note: /home/user/validator/opensp/lib is where libosp.so is located.

Alas, this did not work.

Thanks in advance for ANY insight you have to offer. :slight_smile:


Maybe just ask the staff to install the Debian package:
jidanni@hoffa:~$ aptitude show w3c-markup-validator
Package: w3c-markup-validator
State: not installed
Version: 0.7.4-4
Priority: optional
Section: web
Maintainer: Frederic Schutz schutz@mathgen.ch
Uncompressed Size: 1683k
Depends: perl (>= 5.8), debconf (>= 0.5) | debconf-2.0, apache2 | httpd,
libwww-perl, liburi-perl, libhtml-template-perl (>= 2.6),
libhtml-parser-perl (>= 3.25), libtext-iconv-perl, libset-intspan-perl,
libnet-ip-perl, libconfig-general-perl (>= 2.19), sgml-data,
w3c-dtd-xhtml (>= 1.1-5), opensp (>= 1.5release), wwwconfig-common (>=
0.0.48), w3c-linkchecker
Recommends: w3-dtd-mathml
Description: W3C Markup Validator
This is a CGI script which lets you enter the URL of a web page which will be
then checked against a validating SGML parser for conformance to official W3C
recommendations. Pages can also be uploaded.

These are the same scripts that are available on the W3C web site,

Tags: implemented-in::perl, interface::web, protocol::http, role::program,
use::checking, web::cgi, works-with::text, works-with-format::html,