« Previous - Version 8/101 (diff) - Next » - Current version
Vivien Didelot, 04/02/2012 05:29 PM

Build instructions


The daemon source is under the daemon directory. The daemon is a mandatory component of SFLphone.
h3. Prerequisites

Fedora :

sudo yum groupinstall group "Development Tools" "Development Libraries" 
sudo yum install alsa-lib-devel pulseaudio-libs-devel libsamplerate-devel commoncpp2-devel ccrtp-devel libzrtpcpp-devel dbus-c++-devel pcre-devel gsm-devel speex-devel celt071-devel libyaml-devel


We first need to compile to PJSIP library under the libs/pjproject directory.


Do not use any GCC optimisation flags, prefix or -j options or pjproject may fail to compile.
ILBC codec is disabled by default because of the non-GPL license.
Run autoconf aconfigure.ac > aconfigure if you make any modifications to aconfigure.ac file.

cd libs/pjproject
./configure && make dep && make clean && make
cd ../..

Daemon core

./configure  --prefix=/usr
make && sudo make install

You may then compile either the GNOME or the KDE client.

GNOME client

cd sflphone-client-gnome
./configure  --prefix=/usr
make && sudo make install

Be sure to configure the core and the client in the same directory ( /usr in this example ).

Use sflphone-client-gnome to run it, sflphone-client-gnome --debug to display the log messages during runtime.

KDE client

cd sflphone-client-kde
cd build

You may

sudo apt-get build-dep sflphone-client-kde
to install build-dependencies

Installation outside of /usr/

If you choose to install to a path prefix other than /usr/ you most likely have to setup DBUS to include files from the directory containing the daemon's service file. This can be done by creating a file in /etc/dbus-1/session.d/. If, for example, you are installing to your home directory, create the file /etc/dbus-1/session.d/org.sflphone.$USER.conf, with the following contents:

<!DOCTYPE busconfig PUBLIC "-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN" "http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd">

Where you replace $USER with your username.