Skip to content
Jonathan Voigt edited this page Feb 3, 2011 · 2 revisions

Welcome to the soarrobot wiki!

Setup

Ubuntu 10.10 64-bit fresh install, updated, restarted

Soar

Type of install:

  • All of Soar built from trunk
  • Installed to prefix $HOME/sandbox

Add repository: synaptic manager -> settings -> repositories -> other software -> enable "canonical partners"

Reload

Install at least these packages and their dependencies:

subversion
subversion-tools
scons
sun-java6-jdk
swig
g++
python-all-dev
libsvn-java
git
vim

Make sure Sun JDK is in use (other JDKs may work but we don't test that):

sudo update-java-alternatives -s java-6-sun
(ignore error messages)

Create a soar-environment file or modify your login shell to include (bash format here, adopt if necesssary):

export JAVA_HOME="/usr/lib/jvm/java-6-sun"
export SOAR_HOME="$HOME/sandbox"
export LD_LIBRARY_PATH="$SOAR_HOME/lib"
export PATH="$PATH:$SOAR_HOME/bin"

Check out Soar, I usually put this in $HOME/soar:

cd
mkdir soar
cd soar
svn checkout https://soar.googlecode.com/svn/trunk/SoarSuite

Build

cd SoarSuite
make

Test, at the command line:

Tests
java -jar $HOME/sandbox/share/java/soar-smljava-9.3.1.jar

April Libraries

Type of install:

  • Built at command-line using ant

Install more packages:

git
git-gui
libjzlib-java
libjogl-java
gtk-doc-tools
autopoint
libglib2.0-dev
libdc1394-22-dev
libncurses5-dev

Check out and build LCM (not in soar/ subfolder):

cd
svn checkout http://lcm.googlecode.com/svn/trunk lcm-read-only
cd lcm
./bootstrap.sh
./configure
make && sudo make install

Changes to environment:

export CLASSPATH="/usr/share/java/jogl.jar:/usr/share/java/gluegen-rt.jar:/usr/local/share/java/lcm.jar"

Get the private fork of the april repository:

cd
cd soar
git clone TBD

Build

cd
cd soar/april/java
ant
cd mega
ant

Eclipse

I recommend downloading Eclipse and putting it in $HOME/eclipse, I've had problems with package-installed Eclipse. It could be the case that whatever problems I had don't exist anymore.

Download Eclipse IDE for Java Developers from http://www.eclipse.org/downloads

Extract to $HOME

Run from the shell so that it inherits your environment variables:

cd
cd eclipse
./eclipse

A good spot for the workspace is that soar folder.

/home/username/soar/workspace

The git and subversion plugins are OK, sometimes kind of tricky to use. Look for commands and configuration under the "team" heading in menus.

http://subclipse.tigris.org/
http://www.eclipse.org/egit/

Robot Environment

Install more packages:

libjinput-java

Get source:

cd
cd soar
git clone https://github.com/voigtjr/libgrrc-java.git
https://github.com/voigtjr/soarrobot.git

If you have access, do this instead for soarrobot:

git clone [email protected]:/voigtjr/soarrobot.git

Both are built inside of Eclipse (there should be ant scripts for building outside but I haven't made them yet). Start up Eclipse and import "General/Existing projects in to workspace"

Browse to the soar directory for the root and select

soar-smljava
libgrrc-java
soarrobot

libgrrc-java should build no problem. The other two need fixes.

Right click soar-smljava and select Properties, Java Build Path, Libraries, click SML in the list, click Edit, click Variable, click New:

  • Name: SML
  • Path: (click File and browse to $HOME/sandbox/share/java/sml.jar)

Confirm this and pop out of all the dialogs, OK to rebuild all.

Right click soarrobot and select Properties, Java Build Path, Libraries, click ROBOT, click Edit, click User Libraries, click New, call it ROBOT, OK then click ROBOT and Add JARs multiple times to achieve:

/home/username/soar/april/java/april.jar
/home/username/soar/april/java/lib/orc.jar
/usr/share/java/gluegen-rt.jar
/usr/share/java/jogl.jar
/usr/share/java/jzlib.jar
/usr/local/share/lcm.jar

One more user library SOAR with jars (follow steps above substituting SOAR for ROBOT and adding these jars):

/home/username/sandbox/share/java/sml.jar
/home/username/sandbox/share/java/commons-logging-VERSION.jar
/home/username/sandbox/share/java/log4j-VERSION.jar

Before editing, change your formatting by clicking Window, Preferences, Java, Code Style, Formatter, click Import,

/home/username/soar/soarrobot/eclipse-formatter.xml

To run, click Run, click Run Configurations, Java Application, Chooser.

  • Select map configuration, say basic/3x3.txt
  • Right click robot in list on right, Associate Soar Agent
  • Name: whatever, Productions: $HOME/soar/soarrobot/agents/simple/simple-agent.soar
  • A debugger should pop up.
  • Hit run in the debugger or play/stop in the robot environment.

Resources

Soar build procedure for setting up Soar on any platform.

Java Open GL (JOGL) builds folder for JOGL binaries.

JInput binaries for gamepad input driver.

JZlib jar if needed.