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