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