0.Assuming your perform your builds in $D directory
and suggested subdirectories.
1.What is the process to compile Parser3?
As most UNIX programs Parser3 follows the "standard":
mkdir $D/parser3project
cd $D/parser3project
gunzip -c parser3-x.x.tar.gz | tar xvf -
mv parser3-x.x parser3
cd parser3
./configure --prefix=/usr/local
make
That renaming is needed for SQL drivers to be able to find
necessary include-file in Parser3 sources.
NOTE:
On some system you should run 'gmake'.
NOTE:
By default your would get 'parser3' binary without support of these features:
* xml(xdoc and xnode classes)
Read section (3) on getting xml-abled parser.
Read section (4) on configure options.
2.What is the process to install Parser3?
make install
Installation layout:
$prefix/bin/
parser3 -- CGI and command line Parser3 interpreter
auto.p.dist -- configuration file sample,
copy it to auto.p and adjust to your needs
$prefix/etc/
parser3.charsets/ -- charset definition files
koi8-r.cfg -- cyrillic charset [KOI8-R encoding]
windows-1250.cfg -- central europian charset [windows-1250 encoding]
windows-1251.cfg -- cyrillic charset [windows-1251 encoding]
windows-1257.cfg -- baltic charset [windows-1257 encoding]
3.What other libraries are needed to compile/install parser?
3a. You can compile and use parser without any additional libraries.
That would be 'basic' version of it.
3b. In case you wish xml(xdoc and xnode classes) support you need libraries
libxml2 >= 2.4.11
libxslt >= 1.0.9
glib >= 1.2.10
gdome2 >= 0.7.0
on your system, and specify path to them to Parser3 configure script.
Sources of these two libraries must be patched prior to compile:
* libxml2
* libxslt
Installation sequence of these libraries to $D/gnome:
libxml2: [ftp://ftp.gnome.org/pub/GNOME/sources/libxml2/2.4/libxml2-2.4.12.tar.gz]
cd libxml2-x.x.x
patch -p0 < $D/parser3project/parser3/src/lib/patches/libxml_error_column_tab.patch
patch -p0 < $D/parser3project/parser3/src/lib/patches/libxml_htmloutput_of_xslemptyattr_emptyquotes.patch
patch -p0 < $D/parser3project/parser3/src/lib/patches/libxml_transcoder_context1.patch
patch -p0 < $D/parser3project/parser3/src/lib/patches/libxml_transcoder_context2.patch
patch -p0 < $D/parser3project/parser3/src/lib/patches/libxml_transcoder_context3.patch
patch -p0 < $D/parser3project/parser3/src/lib/patches/libxml_transcoder_context4.patch
./configure --prefix=$D/gnome --without-zlib --without-iconv
make install
libxslt: [ftp://ftp.gnome.org/pub/GNOME/sources/libxslt/1.0/libxslt-1.0.9.tar.gz]
cd libxslt-x.x.x
patch -p0 < $D/parser3project/parser3/src/lib/patches/libxslt_html_output_no_charset_meta.patch
./configure --with-libxml-prefix=$D/gnome --prefix=$D/gnome --without-debug --without-debugger
make install
glib: [ftp://ftp.gtk.org/pub/gtk/v1.2/glib-1.2.10.tar.gz]
cd glib-x.x.x
./configure --prefix=$D/gnome
make install
gdome2: [http://gdome2.cs.unibo.it/tarball/gdome2-0.7.0.tar.gz]
cd gdome2-x.x.x
patch -p0 < $D/parser3project/parser3/src/lib/patches/libgdome_cpp_syntax1.patch
patch -p0 < $D/parser3project/parser3/src/lib/patches/libgdome_cpp_syntax2.patch
patch -p0 < $D/parser3project/parser3/src/lib/patches/libgdome_morestatic.patch
./configure --with-glib-prefix=$D/gnome --disable-glibtest --with-libxml-prefix=$D/gnome --prefix=$D/gnome
make install
And copy these additional headers into install includes directory
mkdir $D/gnome/include/libgdome/gdomecore
cp libgdome/gdomecore/gdome-xml-node.h $D/gnome/include/libgdome/gdomecore
cp libgdome/gdomecore/gdome-xml-document.h $D/gnome/include/libgdome/gdomecore
Parser3 configure options, choose whether you need static or dynamic linkage with xml libs:
--with-static-xml=$D/gnome
--with-shared-xml=$D/gnome
NOTE:
In case your glib as installed into some other prefix,
specify it's configuration file with
--with-glib-config=/path/to/your/glib-config
NOTE:
In case you are using SHARED xml libraries, you may want to link in direct path to them,
use this key to specify which linker key to use do do that:
--with-pathlink=LKEY put dynamic libraries paths to binary
using linker key (-R, -rpath-link)
3c. In case you wish $mail:receive support you need libraries
glib >= 1.2.10
gmime >= 1.0.1
on your system, and specify path to them to Parser3 configure script.
You may have already installed glib at 3b step.
glib: [ftp://ftp.gtk.org/pub/gtk/v1.2/glib-1.2.10.tar.gz]
cd glib-x.x.x
./configure --prefix=$D/gnome
make install
gmime: [http://spruce.sourceforge.net/gmime/sources/gmime-1.0.5.tar.gz]
cd gmime-x.x.x
./configure --prefix=$D/gnome
make install
Parser3 configure options, choose whether you need static or dynamic linkage with xml libs:
--with-static-mailreceive=$D/gnome
--with-shared-mailreceive=$D/gnome
NOTE:
In case your glib as installed into some other prefix,
specify it's configuration file with
--with-glib-config=/path/to/your/glib-config
NOTE:
In case you are using SHARED mime library, you may want to link in direct path to it,
use this key to specify which linker key to use do do that:
--with-pathlink=LKEY put dynamic libraries paths to binary
using linker key (-R, -rpath-link)
4.
In case you're not root on machine you're installing Parser,
we recommend you to do:
./configure --prefix=/your/home/parser3install
and afterwards copy parser3install/bin/parser3 to your CGI directory
or make a symlink [if your web server configured to follow symlinks].
You can disable libstdc++ linkage by setting
--disable-link-libstdcpp
option to configure.
You can disable any exec operations by setting
--disable-execs
option to configure.
file::exec, file::cgi and mail:send (unix version) methods would be disabled.
You can enable reading and executing files, not belonging to group+user
other then effective by setting
--disable-safe-mode
option to configure.
You can disable user-configured sendmail commands by forcing it, setting
"--with=sendmail=COMMAND"
option to configure.
In case you are experiencing problem with gcc runtime exception handling,
try to configure with
--with-sjlj-exceptions
option.
Some root config options can be specified at configure time, and would override autodetects.
List of enabled charsets:
--with-charsets=CHARSET[,CHARSET,...] Enables charsets in root config (windows-1251,
windows-1250 windows-1257 koi8-r; Default is windows-1251)
SQL clients:
--with-mysql-client=mysqlclientlib?params
--with-pgsql-client=pgsqlclientlib?params
--with-oracle-client=oracleclientlib?params
Alexandr Petrosian <paf@design.ru> (http://paf.design.ru)
$Id: INSTALL,v 1.30 2003/01/09 17:06:45 paf Exp $
E-mail: