''Table of Contents''

* OS Specific Installation Guide [#OSSpec]

** [[Debian/Ubuntu>./Debian]] [#n7975383]
- [[Installation Guide for Debian/Ubuntu>./Debian]]
** [[Mac>./Mac]] [#zecf5e79]
- [[Installation Guide for Mac>./Mac]]

* General Installation Guide [#General]

** Dependent Libraries [#k140a87a]
To build SkyAI, the following libraries (including headers) are needed:

- [[Octave>http://www.gnu.org/software/octave/]] (liboctave, headers)

- [[Boost C++ Libraries>http://www.boost.org/]]
-- current_function.hpp
-- Bind (bind.hpp)
-- Conversion (lexical_cast.hpp)
-- Filesystem (filesystem/operations.hpp, filesystem/path.hpp)
-- Function (function.hpp)
-- Preprocessor (preprocessor.hpp)
-- Random (random.hpp)
-- Spirit (spirit/include/classic.hpp)
-- Tokenizer (tokenizer.hpp)

- [[Open Dynamics Engine (ODE)>http://www.ode.org/]] (Required only for robot-learning benchmarks)
-- libode
-- libdrawstuff
-- We tested the following versions:
--- 0.11.1, 0.10.1

- Some *nix-specific headers:
-- sys/ioctl.h
-- sys/resource.h
-- sys/stat.h
-- sys/time.h
-- sys/types.h
-- termios.h
-- fcntl.h
-- unistd.h

** Build [#k29289c2]
*** 1. Download the source code [#yb19ea79]
Get the files from the Git repository:

  $ git clone git://skyai.git.sourceforge.net/gitroot/skyai/skyai

*** 2. Setup the makefiles [#se537c68]
1. Create a blank file Makefile_preconf:
  touch Makefile_preconf
2. Edit it as follows:
  include $(BASE_REL_DIR)/Makefile_preconf.sample
where SKYAI_DIRECTORY denotes the root directory of SkyAI.

1. Create Makefile_libconf as a copy of Makefile_libconf.sample
  cp Makefile_libconf.sample Makefile_libconf
2. edit Makefile_libconf

*** 3. Build [#p64d4c4f]
''Build all programs''

In the skyai directory, execute:
  $ make

''Custom build''
Note: liblora is a supplementary library of SkyAI, which is used in every program.

:Only libskyai (with ODE)|
  $ make lora skyai

:Only libskyai (without ODE)|
  $ make lora skyai
  $ make lora_std lora_oct skyai

:Maze2D demo (without ODE)|
  $ make -C benchmarks/maze2d

Front page   New List of pages Search Recent changes   Help   RSS of recent changes