CSLI/CALO - Install Instructions for Supporting Software
This page describes all the necessary steps for downloading, installing, and building the software which supports the CSLI CALO components on the Windows platform. Note that this has only been tested on a fresh Windows XP environment, and we can't support other OSs at this time. You will need to perform these steps in order.
Preliminaries
You probably already know how to do this, but to add a string to your system path in Windows XP (which you will need to do a few times below):
- Go to
My Computer
- Right-click to get
Properties
- Choose the
Advanced tab
- Hit the
Environment Variables button
- Modify the
Path variable under the System Variables area by adding the new string to the beginning of the existiing path string, and be sure to add ; after the new string.
Java JDK 5.0
This Java JDK gives you a Java 5.0-compatible compiler, which you will need for this code. A 1.4 version will not work.
- Download and install the J2SE? 1.5.0 Development Kit (JDK 5.0)
- Create a
JAVA_HOME environment variable so that it points to the main directory where it was installed (e.g. C:\Program Files\Java\jdk1.5.0_06)
- Add the
bin and jre\bin\client directory under this directory to your path
Java Media Framework (JMF)
The JMF provides media playback capability for NOMOS.
- Download and install the JMF system for your platform (should be Windows acceleration pack)
- Add both the JMF
bin directory and the lib directory within it to your path
- Add that same
lib directory to your CLASSPATH
- Create another environment variable called
JMFHOME which points to the root install directory
- Restart after install, as the Java library loading will only work after this is done
Cygwin
Cygwin is a unix engine for Windows which supports command line execution of things like perl and bash scripts.
- Install the latest version however you want
- Add the cygwin
bin directory to your path (will not be done automatically by the installer)
Apache Ant
Ant is a builder for Java projects. This will allow you to build the CALO components from source.
- Download the latest version from their site
- Add the Ant
bin folder (e.g., C:\apache-ant-1.6.5-bin\apache-ant-1.6.5\bin ) to your path
MS Visual C++ version 6.0
MS Visual C++ is used to build the Gemini parser (the SICStus executable) and its supporting libraries (the Berkeley DB library).
- Install as instructed (tell it to set path variables when asked)
- You should have the following added to your environment (paths could be slightly different):
- Added to PATH: C:/Program Files/Microsoft Visual Studio/VC98/Bin;C:/Program Files/Microsoft Visual Studio/Common/MSDev98/Bin
- Added to LIB: C:\Program Files\Microsoft Visual Studio\VC98\mfc\lib;C:\Program Files\Microsoft Visual Studio\VC98\lib
- Added to INCLUDE: C:\Program Files\Microsoft Visual Studio\VC98\atl\include;C:\Program Files\Microsoft Visual Studio\VC98\mfc\include;C:\Program Files\Microsoft Visual Studio\VC98\include
Berkeley DB 4.1.25
Berkeley DB is a database which is used by the Gemini NL Parser for storing the lexicon. You only need it if you are building or running the parser
- Go to the Cisco legacy releases page and download and install version 4.1.25
- Build the win32 libraries
- In MVC++6, choose File -> Open Workspace
-
- Look in the directory for the build_win32 directory, select Berkeley_DB.dsw, and press Open
- Choose Build -> Set Active Configuration and choose the
build_all Release target, then click OK
- To build, press F7
- When completed, add the generated
build_win32/Release to your path.
OAA
OAA is an inter-agent communication architecture. You need it to run the CALO Desktop and IRIS agents which provide necessary KB support for the services.
- Go to the download page for version 2.3.1 and unzip the zip file
- Add the
OAA_HOME variable to your environment variable and set it to the location of the file which was created during unzipping (i.e. the oaa2.3.1/ directory)
- Add the following to your
PATH:
- %OAA_HOME%\runtime\facilitator\win32
- %OAA_HOME%\lib\win32
SICStus Prolog 3.12.8
SICStus Prolog is a non-free prolog engine which is used by Gemini. Be sure to get version 3.12.8.
NOTE: An evaluation version of SICStus Prolog can be downloaded from:
- Install as instructed
- Add the
bin directory to your path
- Add the
library/$PLATFORM directory to your path (this directory should contain the dll files)
Gemini
Gemini is a Prolog-based natural language parser.
Building Gemini requires SICStus Prolog 3.12.8, and a compiled Berkeley DB library (see above).
- Make sure the Java
jvm.dll library, the Berkeley DB library, and sicstus are all on your path (the following commands should return sensible results):
-
which sicstus
-
which libdb41.dll
-
which jvm.dll
- Create an environment variable
CSLI_WORKSPACE_DIR and set it to your CSLI software root directory (e.g., collator/csli). Do not use backslashes -- use forward slashes instead.
- Build the Gemini core code:
-
cd ${CSLI_WORKSPACE_DIR}/calo/ext/gemini/core_code
-
make
- Build Gemini (this may take over an hour):
-
cd ${CSLI_WORKSPACE_DIR}/calo/src/broadcoverage
-
make everything
SVM Light
SVM Light is a support vector machine classifier used by the action item detection modules.
- Download and unzip the Windows binary version
- Add the new directory (which should contain both
svm_learn.exe and svm_classify.exe) to your path
WordNet 2.0
WordNet is a lexical semantic hierarchy used by the topic identifier.
- Download and install the Windows version of WordNet 2.0
- Make sure it uses the default installation path c:\program files\WordNet\2.0
varyNTopics
varyNTopics is Tom Griffiths & Konrad Körding's C implementation of the generative topic model with Gibbs sampling described in
our ACL 2006 paper. The code is part of the standard CSLI distribution, but you must build an executable:
- Build varyNTopics:
-
cd ${CSLI_WORKSPACE_DIR}/calo/src/varyNTopics
-
make varyNTopics
- Check the filename of the resulting executable. If it is
varyNTopics, you're done. If it is varyNTopics.exe, you need to add this line to your calo.local.config file:
- topic.mit.exe=../../../calo/src/varyNTopics/varyNTopics.exe
ENV CHECK
The following is an example list of PATH entries which your PATH should resemble after completing all the steps above:
-
C:/Program Files/JMF2.1.1e/bin
-
C:/Program Files/JMF2.1.1e/lib
-
C:/cygwin/bin
-
C:/db-4.1.25/build_win32/Release
-
C:/svm_light_windows
-
C:/oaa2.3.1/runtime/facilitator/win32
-
C:/oaa2.3.1/lib/win32
-
C:/apache-ant-1.6.5-bin/apache-ant-1.6.5/bin
-
C:/Program Files/Java/jdk1.5.0_06/bin
-
C:/Program Files/Java/jdk1.5.0_06/jre/bin/client
-
C:/Program Files/SICStus Prolog 3.12.8/bin
-
C:/Program Files/SICStus Prolog 3.12.8/library/x86-win32-nt-4
The following lists examples for other environment variables you should have set:
-
CSLI_WORKSPACE_DIR = C:/workspace (make sure you DO NOT use backslashes!)
-
OAA_HOME = C:/oaa2.3.1
-
JMFHOME = C:/Program Files/JMF2.1.1e
-
JAVA_HOME = C:/Program Files/Java/jdk1.5.0_06