For developers
Introduction | Build from source code repository
Building minisip from the subversion repository involves the following steps:
- Install the development packages for the external dependencies
- Downloading latest source code from version control system
- Compiling and installing libmutil
- Compiling and installing libmnetutil
- Compiling and installing libmcrypto
- Compiling and installing libmikey
- Compiling and installing libmsip
- Compiling and installing libmstun
- Compiling and installing libminisip
- Compiling and installing the minisip application
or
You can use the buildall.sh, buildonly.sh and minisip.run.sh to automate the whole process.
This scripts are available at the root of the repository and they will create an in-place compilation,
thus nothing needs to be installed in your system (if you use GTK gui, you need to install the minisip/share
in your shared folder, in Linux). You will still need to
install the dev packages for the dependencies.
Install the development package for the external dependencies
This is for a Linux compilation (for other compilations, you can see the Documentation in the SVN).
You need:
OpenSSL
Install the openssl-dev package (we need the libraries plus the openssl header files). Use
OpenSSL >= 0.9.7 (0.9.8 recommended).
In Debian: apt-get install libssl-dev
LibGlademm (if you are going to use the GTK gui)
Install the libglademm package (we need the libraries plus the header files). Libglademm has lots
of dependencies (gtkmm, gtk, pango, ... ). You should rely on the automatic installation tools in
your platform, otherwise it can get messy.
In Debian: apt-get install libglademm-2.4-dev
You should install libglademm >= 2.4 to obtain the best MiniSIP experience.
Downloading latest source code from version control system
Minisip uses subversion to manage the source code. The following command downloads the latest source:
               
erik@dev:~$ svn co svn://svn.minisip.org/minisip/trunk
Compiling and installing libmutil
First we run the bootstrap script to generate the configure script.
               
erik@dev:~/minisip/libmutil$ ./bootstrap
Now we will run the configure script. If you want to install the library
in some other directory than the default locations (/usr/local/lib
and /usr/local/include), we add for example --prefix=/home/$USER as
argument to the configure script. Another argument, "--enable-debug"
can be used to generate more debugging features and debug output.
               
erik@dev:~/minisip/libmutil$ ./configure --enable-debug
Now we are ready to compile the source code of libmutil and install it:
               
erik@dev:~/minisip/libmutil$ make
               
erik@dev:~/minisip/libmutil$ make install
Compiling and installing libmnetutil
Configuring, compiling and installing libmnetutil is done the same way as
with libmutil:
               
erik@dev:~/minisip/libmnetutil$ ./bootstrap
               
erik@dev:~/minisip/libmnetutil$ ./configure --enable-debug
               
erik@dev:~/minisip/libmnetutil$ make
               
erik@dev:~/minisip/libmnetutil$ make install
Compiling and installing libmcrypto
Configuring, compiling and installing libmcrypto is done the same way as
with libmutil:
               
erik@dev:~/minisip/libmcrypto$ ./bootstrap
               
erik@dev:~/minisip/libmcrypto$ ./configure --enable-debug
               
erik@dev:~/minisip/libmcrypto$ make
               
erik@dev:~/minisip/libmcrypto$ make install
Compiling and installing libmikey
Configuring, compiling and installing libmikey is done the same way as
with libmutil:
               
erik@dev:~/minisip/libmikey$ ./bootstrap
               
erik@dev:~/minisip/libmikey$ ./configure --enable-debug
               
erik@dev:~/minisip/libmikey$ make
               
erik@dev:~/minisip/libmikey$ make install
Compiling and installing libmsip
Configuring, compiling and installing libmsip is done the same way as
with libmutil:
               
erik@dev:~/minisip/libmsip$ ./bootstrap
               
erik@dev:~/minisip/libmsip$ ./configure --enable-debug
               
erik@dev:~/minisip/libmsip$ make
               
erik@dev:~/minisip/libmsip$ make install
Compiling and installing libmstun
Configuring, compiling and installing libmstun is done the same way as
with libmutil:
               
erik@dev:~/minisip/libmstun$ ./bootstrap
               
erik@dev:~/minisip/libmstun$ ./configure --enable-debug
               
erik@dev:~/minisip/libmstun$ make
               
erik@dev:~/minisip/libmstun$ make install
Compiling and installing libminisip
Configuring, compiling and installing libminisip is done the same way as
with libmutil:
               
erik@dev:~/minisip/libminisip$ ./bootstrap
               
erik@dev:~/minisip/libminisip$ ./configure --enable-debug
               
erik@dev:~/minisip/libminisip$ make
               
erik@dev:~/minisip/libminisip$ make install
Compiling and installing the minisip application
First, we run the bootstrap script.
               
erik@dev:~/minisip/minisip$ ./bootstrap
Now we need to run the configure script. A number of arguments are
available to set what features will be compiled and what settings to use.
The most important ones are:
- --enable-textui, --enable-gtk or --enable-qt
This sets which user interface will be used. GTK is the
default one, and the text interface is often used during
development. It is also simple to use on dev.minisip.org.
The QT one is not maintained any more and will probably
not compile.
- --enable-debug
This will enable some debug information from the console
and will also result in more debug message output.
- --enable-color-terminal
If you are using linux, you probably want to have the
color coding of the text ui. You don't want this
if you are compiling for windows (it will result in strange
characters here and there).
If using the default user interface (GTK) with color terminal support, the
configure command can look like this:
               
erik@dev:~/minisip/minisip$ ./configure --enable-debug --enable-color-terminal
Other configure parameters for enabling other features such as video
support can be read about by writing
               
erik@dev:~/minisip/minisip$ ./configure --help
To compile and install the source code, run:
               
erik@dev:~/minisip/minisip$ make
               
erik@dev:~/minisip/minisip$ make install
It can be run by writing:
               
erik@dev:~/minisip/minisip$ minisip_gtkgui