configure
to generate MakeDefns, Makefile, and Makefile.app. configure
accepts following arguments:--enable-distrib
compiles and installs the distributed retrieval components. Default is disabled.--enable-summarization
compiles and installs the summarization components. Default is disabled.--enable-cluster
compiles and installs the document clustering components. Default is disabled.--enable-assert
Enable assert statements in the code. Default is disabled.--prefix=<install-directory>
Specifies the directory for the installed toolkit. Default is /usr/local.--enable-java
compiles and installs the swig generated java wrappers. Default is disabled.--enable-php
compiles and installs the swig generated php wrappers. Default is disabled.--enable-csharp
compiles and installs the swig generated C# wrappers. Default is disabled.--with-javahome=<path>
Path to JAVAHOME for compiling the swig generated shared library.--with-php-config=<path>
Path to php-config binary. Only required if php-config is not on the path.--with-swig=<path>
Path to swig binary. Only required if the wrapper interfaces are changed.--with-site-seed=<hostname>
Hostname to use as the seed for building a site search index.
make
(or gmake)
make clean
(or gmake clean)
make install
(or gmake install)
The lemur include files will be installed in <install-directory>/include, the lemur library will be installed in <install-directory>/lib/liblemur.a, and the applications will be installed in <install-directory>/bin. If you only want the applications, you can use make install-bin
. If you only want the library and header files, you can use make install-lib
.
If configured with --enable-java, documentation for the Lemur JNI will be installed in <install-directory>/share/lemur/JNIdoc. The file index.html points into the javadoc generated documentation.
For linux and solaris, if configured with --enable-java, the shared library will be installed in <install-directory>/lib/liblemur_jni.so and the java class files will be installed in <install-directory>/share/lemur/lemur.jar and <install-directory>/share/lemur/indri.jar, for the Lemur and Indri APIS. You will need to add <install-directory>/lib to your LD_LIBRARY_PATH and add the appropriate jar file(s) to your CLASSPATH to use the JNI interface.
For OS/X, if configured with --enable-java, the shared library will be installed in <install-directory>/lib/liblemur_jni.jnilib and the java class files will be installed in <install-directory>/share/lemur/lemur.jar and <install-directory>/share/lemur/indri.jar, for the Lemur and Indri APIS. You will need to add <install-directory>/lib to your java.library.path on the java command line, using -Djava.library.path=<install-directory>/lib and add the appropriate jar file(s) to your CLASSPATH to use the JNI interface.
Four additional jar files are installed. RetUI.jar provides a basic document retrieval GUI for interactive queries, using the Indri API. IndexUI.jar provides a basic collection indexing GUI for building an indri repository. LemurRet.jar provides a basic document retrieval GUI for interactive queries using the Lemur API. LemurIndex.jar provides a basic collection indexing GUI for building Lemur indexes. All are installed in <install-directory>/share/lemur and can be run with
java -jar <jarfilename>If configured with --enable-php, the shared library will be installed in <install-directory>/lib/libindri_php.so. You will need to manually install it in the correct extensions directory for your php configuration. Note that only portions of the Indri API are wrapped for use with PHP.
If configured with --enable-csharp, the shared library will be installed in <install-directory>/lib/liblemur_csharp.so. The C# wrapper classes assembly will be installed in <install-directory>/lib/LemurCsharp.dll This assembly should be referenced by your C# program.
Programming with the lemur toolkit
To build an application using the toolkit library:
- follow the instructions above for installing the toolkit library.
- Copy Makefile.app from the top level lemur directory to the directory with your application's source code. Edit the file and fill in values for
- OBJS -- list of each of the object files needed to build your application.
- PROG -- name for your application.
- use
make -f Makefile.app
to build your application.Change the toolkit
Modifying the toolkit is not recommended, but individual users may need to customize its behavior.
<parameters> <index>/usr0/mydata/index.key</index> </parameters>Most applications will display a list of required input variables, if you run it with the "--help" option.