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