Diff for /parser3/INSTALL between versions 1.44.2.5 and 1.48.2.2

version 1.44.2.5, 2005/12/09 10:49:08 version 1.48.2.2, 2005/12/29 08:27:42
Line 1 Line 1
 0.Assuming your perform your builds in $HOME directory   Alexander Petrosian <paf@design.ru> (http://paf.design.ru)
   and suggested subdirectories.  $Id$
   
 1.What is the process to compile Parser3?  1.What is the process to compile Parser3?
   
   First, you must have LIBGC installed (conservative garbage collector for C++).    Just start ./buildall-with-xml script and you would get $HOME/parser3install/bin/parser3 binary.
       libgc >= 6.6    In case you do not need XML support, use ./buildall-without-xml
       
     Installation sequence of this library:  
   
     mkdir $HOME/parser3project  
     mkdir $HOME/parser3project/src  
     cd $HOME/parser3project/src  
     wget http://www.hpl.hp.com/personal/Hans_Boehm/gc/gc_source/gc6.6.tar.gz  
     gunzip -c gc6.6.tar.gz | tar vxf -  
     cd gc6.6  
     CPPFLAGS=USE_LIBC_PRIVATES \  
     ./configure --prefix=$HOME/parser3project/gc --disable-threads --disable-shared --silent  
     make install  
   
     Then you can use these Parser3 configure options to use that statically compiled gc:  
         --with-static-gc=$HOME/parser3project/gc/lib  
         In case you already have libgc.so and want to link parser against it,   
         you can this Parser3 configure option:  
         --with-shared-gc=/path/to/gc/lib  
   
     NOTE:  
     On some platforms there is special version of libgc patched to support some  
     local piece of subtlety.  
     Official libgc does not work there, use special version instead.  
     (OpenBSD reported to be one of those)  
   
   As most UNIX programs Parser3 follows the "standard":  
   
   mkdir $HOME/parser3project  
   cd $HOME/parser3project  
   gunzip -c parser3-x.x.tar.gz | tar xvf -  
   mv parser3-x.x parser3  
   cd parser3  
   ./configure --prefix=$HOME/parser3install --silent  
   make  
     
   That renaming is needed for SQL drivers to be able to find   
   necessary include-file in Parser3 sources.  
   
   NOTE:    NOTE:
   On some system you should run 'gmake'.    On some platforms there is special version of libgc patched to support some
     local piece of subtlety.
     Official libgc does not work there, use special version instead.
     (OpenBSD reported to be one of those)
     If you need that special version, please change buildall script accordingly.
   
   NOTE:    NOTE:
   By default your would get 'parser3' binary without support of these features:    On some systems there are no "make" and you should run 'gmake', change buildall script accordingly then.
     * 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?  2.What is the process to install Parser3?
   
   make install    Just copy files from $HOME/parser3install directory into your cgi-bin directory.
   
   Installation layout:    Files layout:
     $prefix/bin/      $prefix/bin/
       parser3             -- CGI and command line Parser3 interpreter        parser3             -- CGI and command line Parser3 interpreter
       auto.p.dist         -- configuration file sample,         auto.p.dist         -- configuration file sample, 
Line 70 Line 33
         windows-1251.cfg  -- cyrillic charset [windows-1251 encoding]          windows-1251.cfg  -- cyrillic charset [windows-1251 encoding]
         windows-1257.cfg  -- baltic charset [windows-1257 encoding]          windows-1257.cfg  -- baltic charset [windows-1257 encoding]
   
 3.What other libraries are needed to compile/install parser?   3.I have heard about $mail:receive experimental support, how do I use it?
     You need to bulid these additional libraries
 3a. In case you wish XML(xdoc and xnode classes) support, you need libraries  
       libxml2 >= 2.6.22  
       libxslt >= 1.1.15  
       glib >= 1.2.10   
       gdome2 => 0.8.1  
     on your system, and specify path to them to Parser3 configure script.  
   
     Sources of libgdome library must be patched prior to compile. [library author bug confirmation pending]  
   
     Installation sequence of these libraries to $HOME/parser3project/gnome:  
   
     libxml2:  
   
     cd $HOME/parser3project/src  
     mkdir $HOME/parser3project  
     wget --passive-ftp ftp://xmlsoft.org/libxml2-2.6.22.tar.gz  
     gunzip -c libxml2-2.6.22.tar.gz | tar vxf -  
     cd libxml2-2.6.22  
     #sax1, output, tree, xinclude[in libxslt], html[in libxslt, mode=html?] xptr[xinclude]-- needed!  
     ./configure --prefix=$HOME/parser3project/gnome \  
       --without-iconv --without-threads --without-debug \  
       --without-iso8859x --without-legacy \  
       --without-pattern --without-push --without-python \  
       --without-reader --without-writer --without-readline --without-regexps \  
       --without-schemas --without-schematron \  
       --without-modules \  
       --without-zlib \  
       --disable-shared --silent  
         echo "int main(){return 0;}">testapi.c  
         echo "int main(){return 0;}">runtest.c  
     make install  
   
     libxslt:  
   
     cd $HOME/parser3project/src  
     wget --passive-ftp ftp://xmlsoft.org/libxslt-1.1.15.tar.gz  
     gunzip -c libxslt-1.1.15.tar.gz | tar vxf -  
     cd libxslt-1.1.15  
     ./configure --with-libxml-prefix=$HOME/parser3project/gnome --prefix=$HOME/parser3project/gnome --without-debug --without-debugger --without-crypto --without-plugins --disable-shared  --silent  
     make install  
   
     glib:  
   
     cd $HOME/parser3project/src  
     #on freebsd5 this is reported to work:   
     #wget --passive-ftp ftp://ftp.gtk.org/pub/gtk/v1.1/glib-1.1.16.tar.gz  
     wget --passive-ftp ftp://ftp.gtk.org/pub/gtk/v1.2/glib-1.2.10.tar.gz  
     gunzip -c glib-1.2.10.tar.gz | tar vxf -  
     cd glib-1.2.10  
     ./configure --prefix=$HOME/parser3project/gnome --disable-debug --disable-shared  --silent  
     make install  
   
     gdome2:  
   
     cd $HOME/parser3project/src  
     wget http://gdome2.cs.unibo.it/tarball/gdome2-0.8.1.tar.gz  
     gunzip -c gdome2-0.8.1.tar.gz | tar vxf -  
     cd gdome2-0.8.1  
     patch -p0 < $HOME/parser3project/parser3/src/lib/patches/gdome2.patch  
   
     #copy these additional headers into install includes directory  
     mkdir -p $HOME/parser3project/gnome/include/libgdome/gdomecore  
     cp libgdome/gdomecore/gdome-xml-node.h $HOME/parser3project/gnome/include/libgdome/gdomecore  
     cp libgdome/gdomecore/gdome-xml-document.h $HOME/parser3project/gnome/include/libgdome/gdomecore  
       
     set path=($path $HOME/parser3project/gnome/bin)  
     ./configure --enable-glib-1 --disable-glibtest \  
       --prefix=$HOME/parser3project/gnome \  
       --disable-shared  --silent  
     make install  
   
       
   
     Parser3 configure options, choose whether you need static or dynamic linkage with xml libs:  
         --with-static-xml=$HOME/parser3project/gnome  
         --with-shared-xml=$HOME/parser3project/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)  
   
     Sample:  
     cd $HOME/parser3project/parser3  
     ./configure --prefix=$HOME/parser3install \  
         --with-static-gc=$HOME/parser3project/gc/lib \  
         --with-static-xml=$HOME/parser3project/gnome \  
         --with-sendmail="/usr/sbin/sendmail -i -t -f postmaster" \  
         --silent  
         make install  
   
 3b. In case you wish $mail:receive support you need libraries  
       glib >= 1.2.10        glib >= 1.2.10
       gmime >= 1.0.1 [http://spruce.sourceforge.net/gmime/sources/v1.0/gmime-1.0.8.tar.gz]        gmime >= 1.0.1 [http://spruce.sourceforge.net/gmime/sources/v1.0/gmime-1.0.8.tar.gz]
     on your system, and specify path to them to Parser3 configure script.      on your system, and specify path to them to Parser3 configure script.
   
     You may have already installed glib at 3b step.  
   
     glib:      glib:
   
     cd $HOME/parser3project/src      cd $HOME/parser3project/src
Line 191 Line 55
     ./configure --prefix=$HOME/parser3project/gnome      ./configure --prefix=$HOME/parser3project/gnome
     make install      make install
   
     Parser3 configure options, choose whether you need static or dynamic linkage with xml libs:      Then you need to change buildall script to add this to parser3 configure line:
         --with-static-mailreceive=$HOME/parser3project/gnome          --with-static-mailreceive=$HOME/parser3project/gnome
         --with-shared-mailreceive=$HOME/parser3project/gnome      And start that changed ./buildall.
   
     NOTE:      NOTE:
     In case your glib as installed into some other prefix,      In case your glib as installed into some other prefix,
Line 205 Line 69
         --with-pathlink=LKEY    put dynamic libraries paths to binary          --with-pathlink=LKEY    put dynamic libraries paths to binary
                                 using linker key (-R, -rpath-link)                                  using linker key (-R, -rpath-link)
   
 4.  4.Security issues
   
   In case you're not root on machine you're installing Parser,  
   we recommend you to do:  
   ./configure --prefix=$HOME/parser3install  
   and afterwards copy $HOME/parser3install/bin/parser3 to your CGI directory  
   or make a symlink [if your web server configured to follow symlinks].  
   
   You can disable any exec operations by setting    You can disable any exec operations by setting
   --disable-execs    --disable-execs
   option to configure.    option to configure.
Line 224 Line 81
   option to configure.    option to configure.
       
   You can disable user-configured sendmail commands by forcing it, setting    You can disable user-configured sendmail commands by forcing it, setting
   --with=sendmail="COMMAND"    "--with=sendmail=COMMAND"
   option to configure, for example:    option to configure, for example:
   --with-sendmail="/usr/sbin/sendmail -i -t -f postmaster"    "--with-sendmail=/usr/sbin/sendmail -i -t -f postmaster"
   
   In case you are experiencing problem with gcc runtime exception handling,    In case you are experiencing problem with gcc runtime exception handling
     (most notable when reporting sql-related problems),
   try to configure with    try to configure with
   --with-sjlj-exceptions    --with-sjlj-exceptions
   option.      option.
     (HPUX is reported to be have such problems)
   
   By default libstdc++ is linked statically, you can re-enable dynamic libstdc++ linkage by specifying    By default libstdc++ is linked statically, you can re-enable dynamic libstdc++ linkage by specifying
   --with-dynamic-stdcpp    --with-dynamic-stdcpp
Line 257 Line 116
   ./p3runConfigure <any additional options to apache configure to pass>    ./p3runConfigure <any additional options to apache configure to pass>
       
   example:    example:
   ./p3runConfigure --prefix=$D/apache13install --enable-module=rewrite    ./p3runConfigure --prefix=$HOME/apache13install --enable-module=rewrite
   
   WARNING: if you want to use apache configure option --enable-shared=max, do this:    WARNING: if you want to use apache configure option --enable-shared=max, do this:
   ./p3runConfigure --enable-shared=max --disable-shared=mod_parser3.c    ./p3runConfigure --enable-shared=max --disable-shared=mod_parser3.c
     
 Alexandr Petrosian <paf@design.ru> (http://paf.design.ru)  
   
 $Id$  

Removed from v.1.44.2.5  
changed lines
  Added in v.1.48.2.2


E-mail: