READ THIS
If you don't want to go through the trouble explained below and
want to build this extension from a freeWAIS-sf source
directory, get the latest `Wais-2.2??' version!
If you have a perl <= 5.003_07, get the latest `Wais-2.1??'
version!
Requirements
wais.h
To compile this modules needs to find `wais.h' in it's include
path. If you don't have one already, chdir to your freeWAIS-sf
source directory in the `ir' and call the mkinc script in this
distribution like this:
perl .../mkinc -I../ctype ui.h cutil.h irext.h irfiles.h \
irsearch.h irtfiles.h weight.h docid.h > wais.h
The `...' must be replaced by the path to this directory. Then
move `wais.h' to a place where your C-compiler can find it.
You may add additional directories to search in the
`Makefile.PL' to the `INC' parameter of the `WriteMakefile()'
call.
libwais.a
You need also a `libwais.a' which contains all necessary object
files. If you use a older freeWAIS-sf distribution, it might
have generated different libraries, namely `ir/libwais.a',
`lib/libftw.a', `regexp/libregexp.a'. Also the file
`ctype/ctype.o' might be not in any of them. In this case you
must merge the libraries by hand:
mkdir /tmp/wais
cd /tmp/wais
ar x .../ir/libwais.a
ar x .../regexp/libregexp.a
ar x .../lib/libftw.a
cp .../ctype/ctype.o .
ar rc libwais.a *.o
ranlib libwais.a
Depending an your system, the `ar' flags might differ or the
`ranlib' may be obsolete. Please consult the ar manpage and the
ranlib manpage. In addition you may examine the output of perl -
V:ar -V:ranlib
Move the new `libwais.a' to a place where your linker will find
it or add appropriate linker flags to the `LIBS' parameter of
the `WriteMakefile()' call.
waisindex, waisserver
To perform the regression tests, the Module will need
`waisindex' to create a test database and waisserver to test
*remote* connections.
If you do not have a working `waisserver', failure report will
approximately look like this:
t/a_preop.t 3 1 33.33% 3 <- server start failed
t/basic.t 4 2 50.00% 3-4 <- 'remote' searches
t/parallel.t 6 4 66.67% 3-6 <- 'remote' searches
t/z_postop.t 2 1 50.00% 1 <- server stop
Building this extension
Make sure that you met the requirements above. If your perl
supports dynamic loading, do:
perl Makefile.PL
make
make test
make install
make clean
If you want to build a perl with this extension statically
linked in do:
make Makefile.PL
make waisperl
make test_static
To install the new "waisperl" binary, call
make -f Makefile.aperl inst_perl MAP_TARGET=waisperl
To remove the intermediate files say
make -f Makefile.aperl map_clean
If something goes wrong during `make test', try
make test TEST_VERBOSE=1
or
make test_static TEST_VERBOSE=1