Akonadi's build system uses cmake. So to compile Akonadi first create a build dir mkdir build cd build then run cmake: cmake .. (a typical cmake option that is often used is: -DCMAKE_INSTALL_PREFIX=) cmake then presents a configuration summary. At this point you may want to install missing dependancies (if you do, remove the CMakeCache.txt) and run cmake again. Finally build Akonadi: make And install it (in most cases root privileges are required): make install That's all :) === Build Options === The following options are available when running CMake: * AKONADI_BUILD_TESTS (Default: TRUE): Build the Akonadi unit tests * AKONADI_BUILD_QSQLITE (Default: TRUE): Build the SQLite backend * INSTALL_QSQLITE_IN_QT_PREFIX (Default: FALSE): Useful for distributions. Once enabled, the qsqlite3 backend will be installed in ${QT_PLUGINS_DIR}/sqldrivers * STATIC_LIBRARY (Default: FALSE): Build the Akonadi server libraries statically. Only useful for certain cases (eg: WINCE builds). * DATABASE_BACKEND (Default: MYSQL, available: MYSQL, POSTGRES, SQLITE): Define which database driver to use by default. MYSQL is preferred, SQLITE should be avoided. * QT5_BUILD (Default: FALSE): Build against Qt5 instead of Qt4. * WITH_SOPRANO (Default: TRUE): Don't build with Soprano/Nepomuk support === Build Requirements === Required: * Boost (http://www.boost.org) * CMake (http://www.cmake.org) >= 2.8.8 * Qt4 >= 4.6.0 (http://qt.nokia.com/downloads) * Shared-mime-info >= 0.20 (http://freedesktop.org/wiki/Software/shared-mime-info) * Xsltproc (http://xmlsoft.org/XSLT/downloads.html) Optional: * Mysqld (http://www.mysql.com) - Optional at build time. You can pass -DMYSQLD_EXECUTABLE=/path/to/mysqld when running CMake instead * SQlite >= 3.6.23 (http://www.sqlite.org) - Needed if you want to build the Sqlite backend * Postgresql (http://www.postgres.org) - Optional at build time. You can pass -DPOSTGRES_PATH=/path/to/pg_ctl when running CMake instead * Soprano (http://soprano.sourceforge.net) === Runtime Requirements === * SQlite if you plan to use the SQLite backend (NOT RECOMMENDED for desktop) * MySQL server >= 5.1.3 (or compatible replacements such as MariaDB) if you plan to use the Mysql backend * a Postgresql server if you plan to use the Postgres backend