liblinphone  4.3.2
About: Linphone is a cross-platform high-level VoIP library implementing all SIP calling and instant messaging (IM) features within a single API.
  Fossies Dox: liblinphone-4.3.2.tar.gz  ("unofficial" and yet experimental doxygen-generated source code documentation)  

liblinphone Documentation

Some Fossies usage hints in advance:

  1. To see the Doxygen generated documentation please click on one of the items in the steelblue colored "quick index" bar above or use the side panel at the left which displays a hierarchical tree-like index structure and is adjustable in width.
  2. If you want to search for something by keyword rather than browse for it you can use the client side search facility (using Javascript and DHTML) that provides live searching, i.e. the search results are presented and adapted as you type in the Search input field at the top right.
  3. Doxygen doesn't incorporate all member files but just a definable subset (basically the main project source code files that are written in a supported language). So to search and browse all member files you may visit the Fossies
  4. liblinphone-4.3.2.tar.gz contents page and use the Fossies standard member browsing features (also with source code highlighting and additionally with optional code folding).
README.md

pipeline status

Liblinphone

Liblinphone is a high-level SIP library integrating all calling and instant messaging features into an unified easy-to-use API. It is the cross-platform VoIP library on which the Linphone[1] application is based on, and that anyone can use to add audio and video calls or instant messaging capabilities to an application.

License

Copyright © Belledonne Communications

Liblinphone is dual licensed, and is available either :

  • under a GNU/GPLv3 license, for free (open source). Please make sure that you understand and agree with the terms of this license before using it (see LICENSE.txt file for details).

  • under a proprietary license, for a fee, to be used in closed source applications. Contact Belledonne Communications for any question about costs and services.

Documentation

Building liblinphone

The linphone-sdk[7] git project is the recommended way to build liblinphone, as it bundles all required an optional dependencies to build liblinphone as git submodules. It has a top-level CMake build script that makes life easier.

Here the main dependencies listed:

  • BcToolbox[2]: portability layer

  • BelleSIP[3]: SIP stack

  • Mediastreamer2[4]: multimedia engine

  • Belcard[5]: VCard4 support

  • Belr generic parsing engine for ABNF defined languages.

  • libxml2

  • zlib

  • libsqlite3: user data storage (can be disabled)

  • python interpreter and pystache, six python module (needed for C++/C#/Java wrappers and API documentation)

  • doxygen and dot (needed for C++ wrapper and API documentation)

  • Bzrtp[6]: zrtp stack used to secure calls

  • For API documentation generation: sphinx, javasphinx, sphinx_csharp python modules are needed.

Build instructions (when used standalone, outside of linphone-sdk)

cmake . -DCMAKE_INSTALL_PREFIX=<prefix> -DCMAKE_PREFIX_PATH=<search_prefixes>

make
make install

Supported build options

  • CMAKE_INSTALL_PREFIX=<string> : install prefix
  • CMAKE_PREFIX_PATH=<string> : column-separated list of prefixes where to search for dependencies
  • ENABLE_SHARED=NO : do not build the shared library
  • ENABLE_STATIC=NO : do not build the static library
  • ENABLE_STRICT=NO : build without strict compilation flags (-Wall -Werror)
  • ENABLE_DOC=YES : Make the reference documentation of liblinphone to generated
  • ENABLE_UNIT_TESTS=NO : do not build testing binaries
  • ENABLE_VCARD=NO : disable VCard4 support
  • ENABLE_TOOLS=NO : do not build tool binaries
  • ENABLE_LIME=NO : disable Linphone Instant Messaging Encryption

Note for packagers

Our CMake scripts may automatically add some paths into research paths of generated binaries. To ensure that the installed binaries are striped of any rpath, use -DCMAKE_SKIP_INSTALL_RPATH=ON while you invoke cmake.

Rpm packaging liblinphone can be generated with cmake3 using the following commands:

mkdir WORK
cd WORK
cmake3 ../
make package_source
rpmbuild -ta --clean --rmsource --rmspec liblinphone-<version>-<release>.tar.gz

Credits

Belledonne Communications SARL, all rights reserved.

License

This software is distributed under GNU GPLv3. Please read COPYING file for full license text.