Introduction to Evolution Data Server

The Evolution Data Server package provides a unified backend for programs that work with contacts, tasks, and calendar information. It was originally developed for Evolution (hence the name), but is now used by other packages as well.



Development versions of BLFS may not build or run some packages properly if LFS or dependencies have been updated since the most recent stable versions of the books.

Package Information

Evolution Data Server Dependencies


libical-3.0.17, libsecret-0.21.1, nss-3.94, and SQLite-3.43.2


Recommended (Runtime)


Berkeley DB-5.3.28, GTK-Doc-1.33.2, MIT Kerberos V5-1.21.2, a MTA (that provides a sendmail command), OpenLDAP-2.6.6, and libphonenumber

Installation of Evolution Data Server

Install Evolution Data Server by running the following commands:

mkdir build &&
cd    build &&

cmake -DCMAKE_INSTALL_PREFIX=/usr    \
      -DSYSCONF_INSTALL_DIR=/etc     \
      -DWITH_OPENLDAP=OFF            \
      -DWITH_KRB5=OFF                \
      -DENABLE_GTK_DOC=OFF           \
      -DWITH_LIBDB=OFF               \
      -Wno-dev -G Ninja ..           &&

Now, as the root user:

ninja install

To test the results, issue: ninja test.

Command Explanations

-DENABLE_VALA_BINDINGS=ON: This switch enables building the Vala bindings. Remove it if you don't have Vala-0.56.13 installed.

-DENABLE_GTK_DOC=OFF: This switch disables building the API documentation. It is broken for this package due to the use of a long deprecated gtk-doc program that is no longer available.

-DWITH_LIBDB=OFF: This switch allows building this package without Berkeley DB-5.3.28. This package only uses Berkeley DB-5.3.28 to import data from very outdated releases. SQLite-3.43.2 is used for normal operation.

-DENABLE_OAUTH2_WEBKITGTK4=OFF: Use this switch if you did not build WebKitGTK-2.42.1 with GTK-4.

-DWITH_SYSTEMDUSERUNITDIR=no: This switch disables installing the systemd units, which are not used for a Sysv build.



To enable many of the optional dependencies, review the information from cmake -L CMakeLists.txt for the necessary parameters you must pass to the cmake command.


Installed Programs: None
Installed Libraries: libcamel-1.2.so, libebackend-1.2.so, libebook-1.2.so, libebook-contacts-1.2.so, libecal-2.0.so, libedata-book-1.2.so, libedata-cal-2.0.so, libedataserver-1.2.so, libedataserverui-1.2.so, libedataserverui4-1.0.so, and libetestserverutils.so
Installed Directories: /usr/include/evolution-data-server, /usr/lib{,exec}/evolution-data-server, /usr/share/evolution-data-server, /usr/share/installed-tests/evolution-data-server, and /usr/share/pixmaps/evolution-data-server

Short Descriptions


is the Evolution MIME message handling library


is the utility library for Evolution Data Server Backends


is the client library for Evolution address books


is the client library for Evolution contacts


is the client library for Evolution calendars


is the backend library for Evolution address books


is the backend library for Evolution calendars


is the utility library for Evolution Data Server


is the GUI utility library for Evolution Data Server


is the GTK-4 based GUI utility library for Evolution Data Server


is the server test utility library for Evolution Data Server