diff --git a/docs/Install.debian b/docs/Install.debian index e59d5ce4..215c7a29 100644 --- a/docs/Install.debian +++ b/docs/Install.debian @@ -1,77 +1,78 @@ SIP SIMPLE SDK installation on Debian ------------------------------------- Home page: http://sipsimpleclient.org This document describes the installation procedure on Debian operating systems from the official public repository maintained by AG Projects. Configure Repository -------------------- Install the AG Projects debian software signing key: wget http://download.ag-projects.com/agp-debian-gpg.key sudo apt-key add agp-debian-gpg.key Add these lines to /etc/apt/sources.list: Debian Stable (Buster) ----------------------- deb http://ag-projects.com/debian stable main deb-src http://ag-projects.com/debian stable main Update the list of available packages: sudo apt-get update -Install SIP SIMPLE client SDK: +Install SIP SIMPLE SDK: sudo apt-get install python-sipsimple Install the Command Line Clients: sudo apt-get install sipclients Creating Debian Packages ------------------------ Install the building dependencies: sudo apt-get install cython cython-dbg python-setuptools devscripts \ -debhelper python-all-dev python-all-dbg libasound2-dev libssl-dev libsqlite3-dev +debhelper python-all-dev python-all-dbg libasound2-dev libssl-dev \ +libsqlite3-dev For adding Video support: sudo apt-get install libv4l-dev libavcodec-dev libavformat-dev libavutil-dev \ libswscale-dev libswresample-dev libx264-dev libvpx-dev libavcodec-extra Note: do NOT use the Debian-Multimedia repositories. For Ubuntu variants: sudo apt-get install libv4l-dev libavcodec-dev libavformat-dev libavutil-dev \ libswscale-dev libswresample-dev libx264-dev libvpx-dev libavcodec-extra53 Obtain the source code using darcs as described in Install.linux document. Create under each repository a clean distribution file: python setup.py sdist Go to the ./dist directory and untar the file created at the step above. Go to the newly created directory and type: debuild -us -uc The .deb and related files are built in the upper directory. diff --git a/docs/Install.osx b/docs/Install.osx index 39c5a5eb..621354d2 100644 --- a/docs/Install.osx +++ b/docs/Install.osx @@ -1,163 +1,39 @@ -Installation procedure for SIP SIMPLE client SDK on MacOSX >= 10.11 -------------------------------------------------------------------- +Installation procedure for SIP SIMPLE SDK on MacOSX +--------------------------------------------------- Home page: http://sipsimpleclient.org -This document describes the installation procedure on MacOSX >= 10.11 +This document describes the installation procedure on MacOSX >= 10.14 The installation procedure consists of the steps described below: Step 1. Prerequisites -Step 2. Install Dependencies -Step 3. Install SIP SIMPLE client SDK +Step 2. Install dependencies +Step 3. Install SIP SIMPLE SDK Step 1. Prerequisites --------------------- - * MacOSX >= 10.12 - * Apple Developer tools (XCode 9) + * MacOSX >= 10.14 + * Apple Developer tools (XCode 11) * Homebrew from http://brew.sh - * darcs version control tool - * Python pip installer - * Python virtualenv and virtualenvwrapper modules - -Step 2. Install Dependencies +Step 2. Install dependencies ---------------------------- See Dependencies.txt for detailed description of the required libraries and their minimum version number. A. Install the C dependencies, the software will be installed under /usr/local folder by default with Homebrew: -brew install darcs gnutls yasm pkg-config x264 libvpx mpfr libmpc +brew install darcs gnutls yasm pkg-config x264 libvpx mpfr libmpc python3 brew install -s ffmpeg -B. Build and install the Python dependencies - -The procedure below relies on the standard Python interpreter 2.7 that comes -with MacOSX and Xcode version 9. A 64bit build will be produced. - -This guide assumes all software is being installed in a virtualenv (except for -the packages installed with Homebrew, of course). - -Install pip: - -sudo easy_install pip - -Install virtualenv and virtualenvwrapper: - -sudo -H pip install virtualenv --upgrade --ignore-installed six -sudo -H pip install virtualenvwrapper --upgrade --ignore-installed six - -The above are installed in /Library/Python/2.7/site-packages - -Add to ~/.bashrc: - -export WORKON_HOME=$HOME/.virtualenvs -export PIP_VIRTUALENV_BASE=$WORKON_HOME -export PIP_RESPECT_VIRTUALENV=true -[[ -f /usr/share/virtualenvwrapper/virtualenvwrapper_lazy.sh ]] && source /usr/share/virtualenvwrapper/virtualenvwrapper_lazy.sh -[[ -f /usr/local/bin/virtualenvwrapper_lazy.sh ]] && source /usr/local/bin/virtualenvwrapper_lazy.sh - -Creating a virtual environment for python-simple - -mkvirtualenv -p $(which python2.7) sipsimple - -You'll be dropped right into it. If you want to exit it: - -deactivate - -And to activate the virtualenv again: - -workon sipsimple - -Install python dependencies: - -pip install -U python-gnutls python-otr dnspython twisted \ -python-application cython python-dateutil greenlet lxml - -All packages are installed in: - -~/.virtualenvs/sipsimple/lib/python2.7/site-packages/ - - -Step 3. Build and install SIP SIMPLE client SDK ------------------------------------------------ - -Enter virtual environment: - -workon sipsimple - -The SDK consists of four parts: - - 1. python-eventlib - 2. XCAP library - 3. MSRP library - 4. SIP SIMPLE library - -# Eventlet -if [ -d python-eventlib ]; then - cd python-eventlib - darcs pull -a -else - darcs get http://devel.ag-projects.com/repositories/python-eventlib - cd python-eventlib -fi -pip install . -cd .. - -# XCAP library -if [ -d python-xcaplib ]; then - cd python-xcaplib - darcs pull -a -else - darcs get http://devel.ag-projects.com/repositories/python-xcaplib - cd python-xcaplib -fi -pip install . -cd .. - -# MSRP library -if [ -d python-msrplib ]; then - cd python-msrplib - darcs pull -a -else - darcs get http://devel.ag-projects.com/repositories/python-msrplib - cd python-msrplib -fi -pip install . -cd .. - -# SIP SIMPLE library -if [ -d python-sipsimple ]; then - cd python-sipsimple - darcs pull -a -else - darcs get --set-scripts-executable http://devel.ag-projects.com/repositories/python-sipsimple - cd python-sipsimple -fi - -Build and install SIP SIMPLE library: - -python setup.py build_ext --pjsip-clean-compile -python setup.py install - -Additional, you can install the command line interface scripts that can be -used to test the SDK capabilities. - -if [ -d sipclients ]; then - cd sipclients - darcs pull -a -else - darcs get --set-scripts-executable http://devel.ag-projects.com/repositories/sipclients - cd sipclients -fi -python setup.py install -cd .. +Step 3. Install SIP SIMPLE SDK +See Install.linux document diff --git a/docs/Install.windows b/docs/Install.windows index 7c99d3ec..c2de770b 100644 --- a/docs/Install.windows +++ b/docs/Install.windows @@ -1,197 +1,199 @@ -SIP SIMPLE client SDK installation on Microsoft Windows -------------------------------------------------------- +SIP SIMPLE SDK installation on Microsoft Windows +------------------------------------------------ + +Note: This document has not been updated since the migration from Python 2 Home page: http://sipsimpleclient.org This document describes the installation procedure on Microsoft Windows operating systems. Supported versions are Windows XP or higher. Step 1. Prerequisites --------------------- First download and install darcs version control utility from darcs.net: http://darcs.net/binaries/windows/darcs-2.8.1-win1.msi The building process is designed to work with the MSYS2 environment and the MinGW-w64 compiler toolchain. Other approaches might work but they are not tested nor supported. MSYS2: MSYS2 is a minimal Unix-like environment for Windows. It includes a port of the 'pacman' package manager (ported from Arch Linux) and a pretty extensive collection of packages which can be easily installed. It contains packages for the MinGW-w64 toolchain, for 32 and 64 bit architectures. MinGW-w64: MinGW is a minimal compilation toolchain for Windows. It contains GCC and allows for compilation of native applications for Windows. The original MinGW project (available at http://mingw.org, henceforth referred to as 'MinGW32') didn't support 64 bit Windows so the MinGW-w64 project was created. It contains support for both 32 and 64 bit architectures and generally it's better maintained than MinGW32. Step 1.1. Installing MSYS2 and MinGW-w64 ---------------------------------------- The following instructions will guide you through the installation of a MSYS2 and MinGW-w64 installation for a 32 bit Windows system. A 64 bit build is definitely possible but hasn't been tested. * Go to http://msys2.github.io and download the 32 bit (i686) MSYS2 installer * Run it and install it on C:\msys2 (or any other path, but note it has to be ASCII only and with no spaces! The no spaces restriction also applies to the paths of the packages that will be built during the installation) * Once the process is finished, check the box to "Run MSYS2 32bit now", a new terminal window will appear * Upgrade the system packages by following the instructions from: http://msys2.github.io * Install the compiler toolchain and assorted tools: pacman -S mingw-w64-i686-toolchain make mingw-w64-i686-libtool autoconf automake-wrapper After MSYS2 was installed a new menu group was created on the Window start menu: "MSYS2 32bit", which contains 3 links: MinGW-w64 Win32 Shell, MinGW-w64 Win64 Shell and MSYS2 Shell. We'll use "MinGW-w64 Win32 Shell" from now on, since it will contain the 32 bit MinGW-w64 toolchain in the path. Step 1.2. Installing Python 2.7 ------------------------------- In order to avoid problems derived from using multiple C runtimes, we are going to install Python 2.7 using pacman. The Python binaries that are available for download on Python's official website are compiled with Visual Studio, and if we use MinGW to compile libraries which are then used by Python modules we are at risk because the resulting application would load 2 different C runtimes. * Install Python 2.7 by running: pacman -S mingw-w64-i686-python2 * Install pip/setuptools: pacman -S mingw-w64-i686-python2-pip NOTE: At the time of this writing the Python REPL needs to be started with "python -i" due to a problem with the ncurses libraries. Step 2. Install dependencies ---------------------------- See Dependencies.txt for detailed description of the required libraries and their minimum version number. * Install required dependencies with pacman: pacman -S mingw-w64-i686-gnutls mingw-w64-i686-python2-lxml mingw-w64-i686-ffmpeg mingw-w64-i686-sqlite3 msys2-w32api-headers mingw-w64-i686-gmp mingw-w64-i686-mpc mingw-w64-i686-mpfr * Install the Python package dependencies: pip install cython dnspython twisted python-dateutil greenlet python-application python-cjson python-gnutls python-otr Step 2.1. Install python-otr dependencies (if installation fails) ----------------------------------------------------------------- At the time of this writing installing python-otr straight from PyPI is not possible due to some of its dependencies having problems in the MinGW toolchain. Installing these from source works though, so let's do that. * Install Mercurial and Git: pacman -S mercurial git * Install cffi: hg clone https://bitbucket.org/cffi/cffi cd cffi pip install . * Install cryptography: git clone https://github.com/pyca/cryptography.git cd cryptography pip install . Note: if pip install fails, with: distutils.errors.DistutilsPlatformError: VC 6.0 is not supported by this module check: https://github.com/pypa/setuptools/issues/1118 (PeterMosmans' answer) * Install gmpy2: git clone https://github.com/aleaxit/gmpy.git cd gmpy pip install . * Install python-otr: pip install python-otr Step 2.2. Build and install some extra packages ----------------------------------------------- mingw-w64-intsafe-headers * Get the package code: darcs get http://devel.ag-projects.com/repositories/windows/mingw-w64-intsafe-headers * Enter the directory and build+install the package: cd mingw-w64-intsafe-headers && makepkg-mingw -cfiL --nocheck --nosign mingw-w64-dshow-baseclasses * Get the package code: darcs get http://devel.ag-projects.com/repositories/windows/mingw-w64-dshow-baseclasses * Enter the directory and build+install the package: cd mingw-w64-dshow-baseclasses && makepkg-mingw -cfiL --nocheck --nosign Step 3. Install SIP SIMPLE client SDK ------------------------------------- The SDK consists of four parts: 1. python-eventlib 2. XCAP library 3. MSRP library 4. SIP SIMPLE library itself Make sure that the path where you download the software below does not contain any space in its name. # Eventlib if [ -d python-eventlib ]; then cd python-eventlib darcs pull -a else darcs get http://devel.ag-projects.com/repositories/python-eventlib cd python-eventlib fi pip install . cd .. # XCAP library if [ -d python-xcaplib ]; then cd python-xcaplib darcs pull -a else darcs get http://devel.ag-projects.com/repositories/python-xcaplib cd python-xcaplib fi pip install . cd .. # MSRP library if [ -d python-msrplib ]; then cd python-msrplib darcs pull -a else darcs get http://devel.ag-projects.com/repositories/python-msrplib cd python-msrplib fi pip install . cd .. # SIP SIMPLE if [ -d python-sipsimple ]; then cd python-sipsimple darcs pull -a else darcs get --set-scripts-executable http://devel.ag-projects.com/repositories/python-sipsimple cd python-sipsimple fi ./build_inplace --pjsip-clean-compile pip install . cd .. The software has been installed in C:\msys2\mingw32\lib\python2.7\site-packages