S3QL depends on several other programs and libraries that have to be installed first. The best method to satisfy these dependencies depends on your distribution. In some cases S3QL and all its dependencies can be installed with as little as three commands, while in other cases more work may be required.
The S3QL Wiki contains installation instructions for quite a few different Linux distributions. You should only use the generic instructions in this manual if your distribution is not included in the distribution-specific installation instructions on the wiki.
The following is a list of the programs and libraries required for running S3QL. Generally, you should first check if your distribution already provides a suitable packages and only install from source if that is not the case.
Kernel: Linux 2.6.9 or newer or FreeBSD with FUSE4BSD. Starting with kernel 2.6.26 you will get significantly better write performance, so under Linux you should actually use 2.6.26 or newer whenever possible.
Python 2.7 (but not Python 3.x). Make sure to also install the development headers.
The PyCrypto++ Python Module. To check if this module is installed, try to execute python -c 'import pycryptopp'.
SQLite version 3.7.0 or newer. SQLite has to be installed as a shared library with development headers.
The APSW Python Module. To check which (if any) version of APWS is installed, run the command
python -c 'import apsw; print apsw.apswversion()'
The printed version number should be at least 3.7.0. Note that APSW must be linked dynamically against SQLite, so you can not use the Ubuntu PPA at https://launchpad.net/~ubuntu-rogerbinns/+archive/apsw (these packages are statically linked).
The PyLibLZMA Python module. To check if this module is installed, execute python -c 'import lzma; print lzma.__version__'. This should print a version number. You need at least version 0.5.3.
The Python LLFUSE module. To check if this module is installed, execute python -c 'import llfuse; print llfuse.__version__'. This should print a version number. You need at least version 0.37.
Note that early S3QL versions shipped with a built-in version of this module. If you are upgrading from such a version, make sure to completely remove the old S3QL version first.
To install S3QL itself, proceed as follows:
Now you have three options: