Annotation of parser3/INSTALL, revision 1.40

1.33      paf         1: 0.Assuming your perform your builds in $HOME directory 
1.1       paf         2:   and suggested subdirectories.
                      3: 
1.33      paf         4: 1.What is the process to compile Parser3?
                      5: 
                      6:   First, you must have LIBGC installed (conservative garbage collector for C++).
1.39      paf         7:       libgc >= 6.1 [http://www.hpl.hp.com/personal/Hans_Boehm/gc/gc_source/gc6.4.tar.gz]
1.33      paf         8:     
                      9:     Installation sequence of this library to $HOME/gc:
                     10: 
                     11:     cd libgc-x.x
                     12:     ./configure --prefix=$HOME/gc --disable-threads --silent
                     13:     make install
                     14: 
                     15:     Then you can use these Parser3 configure options to specify the location and static/dynamic linkage with libgc:
                     16:         --with-static-gc=$HOME/gc/lib
                     17:         --with-shared-gc=$HOME/gc/lib
1.1       paf        18: 
1.38      paf        19:     NOTE:
                     20:     On some platforms there is special version of libgc patched to support some
                     21:     local piece of subtlety.
                     22:     Official libgc does not work there, use special version instead.
                     23:     (OpenBSD reported to be one of those)
                     24: 
1.3       paf        25:   As most UNIX programs Parser3 follows the "standard":
1.1       paf        26: 
1.33      paf        27:   mkdir $HOME/parser3project
                     28:   cd $HOME/parser3project
1.3       paf        29:   gunzip -c parser3-x.x.tar.gz | tar xvf -
                     30:   mv parser3-x.x parser3
1.2       paf        31:   cd parser3
1.39      paf        32:   ./configure --prefix=$HOME/parser3install --silent
1.2       paf        33:   make
                     34:   
1.3       paf        35:   That renaming is needed for SQL drivers to be able to find 
                     36:   necessary include-file in Parser3 sources.
                     37: 
1.10      paf        38:   NOTE:
                     39:   On some system you should run 'gmake'.
1.7       paf        40: 
1.10      paf        41:   NOTE:
1.1       paf        42:   By default your would get 'parser3' binary without support of these features:
                     43:        * xml(xdoc and xnode classes)
1.10      paf        44:   Read section (3) on getting xml-abled parser.
1.1       paf        45: 
1.17      paf        46: 
1.18      paf        47:   Read section (4) on configure options.
1.10      paf        48: 
1.2       paf        49: 2.What is the process to install Parser3?
                     50: 
                     51:   make install
                     52: 
1.1       paf        53:   Installation layout:
                     54:     $prefix/bin/
                     55:       parser3             -- CGI and command line Parser3 interpreter
1.22      paf        56:       auto.p.dist         -- configuration file sample, 
                     57:                              copy it to auto.p and adjust to your needs
1.1       paf        58:     $prefix/etc/
                     59:       parser3.charsets/   -- charset definition files
1.2       paf        60:         koi8-r.cfg        -- cyrillic charset [KOI8-R encoding]
1.33      paf        61:         windows-1250.cfg  -- central europian charset [windows-1250 encoding]
1.5       paf        62:         windows-1251.cfg  -- cyrillic charset [windows-1251 encoding]
                     63:         windows-1257.cfg  -- baltic charset [windows-1257 encoding]
1.2       paf        64: 
1.10      paf        65: 3.What other libraries are needed to compile/install parser? 
1.1       paf        66: 
1.33      paf        67: 3a. In case you wish XML(xdoc and xnode classes) support, you need libraries
1.39      paf        68:       libxml2 >= 2.6.5 [ftp://xmlsoft.org/libxml2-2.6.17.tar.gz]
1.40    ! paf        69:       libxslt >= 1.1.2 [ftp://xmlsoft.org/libxslt-1.1.10.tar.gz]
        !            70:       glib >= 1.2.10 [ftp://ftp.gtk.org/pub/gtk/v1.2/glib-1.2.10.tar.gz] 
        !            71:       on freebsd5 this is reported to work: ftp://ftp.gtk.org/pub/gtk/v1.1/glib-1.1.16.tar.gz
1.39      paf        72:       gdome2 >= 0.7.4 [http://gdome2.cs.unibo.it/tarball/gdome2-0.8.1.tar.gz]
1.1       paf        73:     on your system, and specify path to them to Parser3 configure script.
                     74: 
1.33      paf        75:     Sources of libgdome library must be patched prior to compile. [library author bug confirmation pending]
1.1       paf        76: 
1.33      paf        77:     Installation sequence of these libraries to $HOME/gnome:
1.1       paf        78: 
1.31      paf        79:     libxml2:
1.1       paf        80: 
                     81:     cd libxml2-x.x.x
1.36      paf        82:     ./configure --prefix=$HOME/gnome --without-zlib --without-iconv --without-threads --silent
1.1       paf        83:     make install
                     84: 
1.31      paf        85:     libxslt:
1.1       paf        86: 
                     87:     cd libxslt-x.x.x
1.33      paf        88:     ./configure --with-libxml-prefix=$HOME/gnome --prefix=$HOME/gnome --without-debug --without-debugger --silent
1.1       paf        89:     make install
                     90: 
1.31      paf        91:     glib:
1.1       paf        92: 
                     93:     cd glib-x.x.x
1.40    ! paf        94:     ./configure --prefix=$HOME/gnome --silent
1.1       paf        95:     make install
                     96: 
1.31      paf        97:     gdome2:
1.1       paf        98: 
1.9       paf        99:     cd gdome2-x.x.x
1.33      paf       100:     patch -p0 < $HOME/parser3project/parser3/src/lib/patches/gdome2.patch
                    101:     ./configure --with-glib-prefix=$HOME/gnome --disable-glibtest --with-libxml-prefix=$HOME/gnome --prefix=$HOME/gnome --silent
1.1       paf       102:     make install
                    103: 
1.9       paf       104:     And copy these additional headers into install includes directory
1.1       paf       105: 
1.39      paf       106:     mkdir -p $HOME/gnome/include/libgdome/gdomecore
1.33      paf       107:     cp libgdome/gdomecore/gdome-xml-node.h $HOME/gnome/include/libgdome/gdomecore
                    108:     cp libgdome/gdomecore/gdome-xml-document.h $HOME/gnome/include/libgdome/gdomecore
1.1       paf       109:     
                    110: 
1.9       paf       111:     Parser3 configure options, choose whether you need static or dynamic linkage with xml libs:
1.33      paf       112:         --with-static-xml=$HOME/gnome
                    113:         --with-shared-xml=$HOME/gnome
1.1       paf       114: 
1.5       paf       115:     NOTE:
                    116:     In case your glib as installed into some other prefix,
                    117:     specify it's configuration file with
                    118:         --with-glib-config=/path/to/your/glib-config
1.24      paf       119:     NOTE:
                    120:     In case you are using SHARED xml libraries, you may want to link in direct path to them,
                    121:     use this key to specify which linker key to use do do that:
                    122:         --with-pathlink=LKEY    put dynamic libraries paths to binary
                    123:                                 using linker key (-R, -rpath-link)
                    124: 
1.33      paf       125: 3b. In case you wish $mail:receive support you need libraries
1.31      paf       126:       glib >= 1.2.10 [ftp://ftp.gtk.org/pub/gtk/v1.2/glib-1.2.10.tar.gz]
1.39      paf       127:       gmime >= 1.0.1 [http://spruce.sourceforge.net/gmime/sources/v1.0/gmime-1.0.8.tar.gz]
1.24      paf       128:     on your system, and specify path to them to Parser3 configure script.
                    129: 
                    130:     You may have already installed glib at 3b step.
                    131: 
1.31      paf       132:     glib:
1.24      paf       133: 
                    134:     cd glib-x.x.x
1.33      paf       135:     ./configure --prefix=$HOME/gnome 
1.24      paf       136:     make install
                    137: 
1.31      paf       138:     gmime:
1.24      paf       139: 
                    140:     cd gmime-x.x.x
1.33      paf       141:     ./configure --prefix=$HOME/gnome
1.24      paf       142:     make install
                    143: 
                    144:     Parser3 configure options, choose whether you need static or dynamic linkage with xml libs:
1.33      paf       145:         --with-static-mailreceive=$HOME/gnome
                    146:         --with-shared-mailreceive=$HOME/gnome
1.24      paf       147: 
                    148:     NOTE:
                    149:     In case your glib as installed into some other prefix,
                    150:     specify it's configuration file with
                    151:         --with-glib-config=/path/to/your/glib-config
                    152:     NOTE:
                    153:     In case you are using SHARED mime library, you may want to link in direct path to it,
1.33      paf       154:     use this key to specify which linker key to use do do that:
1.9       paf       155:         --with-pathlink=LKEY    put dynamic libraries paths to binary
                    156:                                 using linker key (-R, -rpath-link)
                    157: 
1.18      paf       158: 4.
                    159: 
                    160:   In case you're not root on machine you're installing Parser,
                    161:   we recommend you to do:
                    162:   ./configure --prefix=/your/home/parser3install
                    163:   and afterwards copy parser3install/bin/parser3 to your CGI directory
                    164:   or make a symlink [if your web server configured to follow symlinks].
                    165: 
                    166:   You can disable any exec operations by setting
                    167:   --disable-execs
                    168:   option to configure.
                    169:   file::exec, file::cgi and mail:send (unix version) methods would be disabled.
                    170: 
1.29      paf       171:   You can enable reading and executing files, not belonging to group+user 
                    172:   other then effective by setting
                    173:   --disable-safe-mode
1.18      paf       174:   option to configure.
                    175:   
                    176:   You can disable user-configured sendmail commands by forcing it, setting
                    177:   "--with=sendmail=COMMAND"
                    178:   option to configure.
1.26      paf       179: 
                    180:   In case you are experiencing problem with gcc runtime exception handling,
                    181:   try to configure with
                    182:   --with-sjlj-exceptions
                    183:   option.  
1.18      paf       184: 
1.33      paf       185:   By default libstdc++ is linked statically, you can re-enable dynamic libstdc++ linkage by specifying
                    186:   --with-dynamic-stdcpp
                    187:   option to configure.  
                    188: 
                    189: 
1.18      paf       190:   Some root config options can be specified at configure time, and would override autodetects.
                    191: 
                    192:   List of enabled charsets:
                    193:   --with-charsets=CHARSET[,CHARSET,...]  Enables charsets in root config (windows-1251,
                    194:                           windows-1250 windows-1257 koi8-r; Default is windows-1251)
                    195:   SQL clients:
1.21      paf       196:   --with-mysql-client=mysqlclientlib?params
                    197:   --with-pgsql-client=pgsqlclientlib?params
                    198:   --with-oracle-client=oracleclientlib?params
1.18      paf       199:   
1.37      paf       200: 5.
                    201:   If you need to build apache 1.3 parser module, get source distribution of apache 1.3,
                    202:   run configure there, then run parser configure with one more option:
                    203:   --with-apache13=Apache13 source distribution directory
                    204:   after 'make' go to that directory and run
                    205: 
                    206:   ./p3runConfigure <any additional options to apache configure to pass>
                    207:   
                    208:   example:
                    209:   ./p3runConfigure --prefix=$D/apache13install --enable-module=rewrite
                    210: 
                    211:   WARNING: if you want to use apache configure option --enable-shared=max, do this:
                    212:   ./p3runConfigure --enable-shared=max --disable-shared=mod_parser3.c
                    213:   
1.4       paf       214: Alexandr Petrosian <paf@design.ru> (http://paf.design.ru)
1.1       paf       215: 
1.40    ! paf       216: $Id: INSTALL,v 1.39 2005/01/31 08:51:32 paf Exp $

E-mail: