For developers

Introduction | Build from source code repository

Building minisip from the subversion repository involves the following steps:

  1. Install the development packages for the external dependencies

  2. Downloading latest source code from version control system

  3. Compiling and installing libmutil

  4. Compiling and installing libmnetutil

  5. Compiling and installing libmcrypto

  6. Compiling and installing libmikey

  7. Compiling and installing libmsip

  8. Compiling and installing libmstun

  9. Compiling and installing libminisip

  10. 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


    © 2004 minisip.org. Last modified Thursday, 08-Feb-2007 22:07:39 CET