forked from Mirrors/freeswitch
8330336e9a
[apr] Backport APR_RING_FOREACH and APR_RING_FOREACH_SAFE macros to APR for unimrcp compatibility. [unimrcp] configure.gnu - need full path, not relative path for library paths [unimrcp] added uni_revision.h - couldn't get it to autogenerate from build [mod_unimrcp] add better logging and error checking on module load. Currently dumps core on MRCPv1 TTS attempt [mod_unimrcp] don't configure MRCPv1 session with a connection agent- causes crash
159 lines
4.8 KiB
Plaintext
159 lines
4.8 KiB
Plaintext
BUILD REQUIREMENTS
|
|
==================
|
|
|
|
The UniMRCP project depends on a number of third party tools and libraries which must be installed first.
|
|
|
|
All the required dependencies are available to download prepackaged for the UniMRCP use from the
|
|
following location:
|
|
|
|
http://www.unimrcp.org/downloads/dependencies
|
|
|
|
Alternatively, original versions of the libraries as well as patches on them can be downloaded
|
|
separately from the following location:
|
|
|
|
http://www.unimrcp.org/dependencies
|
|
|
|
References:
|
|
|
|
1. Apache Portable Runtime [>=1.2.x] (http://apr.apache.org).
|
|
In order to build any part of the UniMRCP project, the Apache Portable Runtime (APR) and
|
|
the APR Utility (APR-util) libraries are required. The libraries provide a consistent interface to
|
|
underlying platform-specific implementations.
|
|
|
|
2. Sofia-SIP [>=1.12.6] (http://sofia-sip.sourceforge.net).
|
|
Sofia-SIP is an open-source SIP User-Agent library, compliant with the IETF RFC3261 specification.
|
|
The library is utilized for implementation of SIP signaling for MRCPv2. The SDP message parser is
|
|
also used for both MRCPv2 (SIP/SDP) and MRCPv1 (RTSP/SDP).
|
|
|
|
|
|
GNU BUILD
|
|
=========
|
|
|
|
Prerequisites:
|
|
|
|
autoconf 2.59 or newer
|
|
automake
|
|
libtool 1.4 or newer
|
|
gcc
|
|
pkg-config
|
|
|
|
|
|
Procedure:
|
|
|
|
If the UniMRCP source is checked out from the repository, the "bootstrap" script must be run first
|
|
in order to generate the "configure" script and other required files.
|
|
|
|
./bootstrap
|
|
|
|
The usual "configure", "make", "make install" sequence of commands should follow in order to build
|
|
and install the project from source.
|
|
|
|
./configure
|
|
make
|
|
make install
|
|
|
|
As a result, the project will be installed in the directory "/usr/local/unimrcp" with the following
|
|
layout:
|
|
|
|
bin binaries (unimrcpserver, unimrcpclient, ...)
|
|
conf configuration files (unimrcpserver.xml, unimrcpclient.xml, ...)
|
|
data data files
|
|
include header files
|
|
lib shared (convenience) libraries
|
|
log log files
|
|
plugin run-time loadable modules
|
|
|
|
There are a couple of options which can additionally be configured.
|
|
In order to specify where to look for the APR and APR-util libraries, use the "--with-apr=" and
|
|
"--with-apr-util=" options respectively. For example:
|
|
|
|
./configure --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr
|
|
|
|
In order to specify where to look for the Sofia-SIP library, use the "--with-sofia-sip=" option.
|
|
For example:
|
|
|
|
./configure --with-sofia-sip=/usr/local/sofia-sip
|
|
|
|
In order to generate executables and shared libraries for x86-64 architecture, use the "-m64"
|
|
option as follows:
|
|
|
|
CFLAGS=-m64 CXXFLAGS=-m64 LDFLAGS=-m64 ./configure
|
|
|
|
In order to generate executables and shared libraries for i386 architecture, use the "-m32" option
|
|
as follows:
|
|
|
|
CFLAGS=-m32 CXXFLAGS=-m32 LDFLAGS=-m32 ./configure
|
|
|
|
In order to install the default configuration, use the following commands:
|
|
|
|
cd conf
|
|
make def-conf
|
|
|
|
In order to install the default data files, use the following commands:
|
|
|
|
cd data
|
|
make def-data
|
|
|
|
In order to build a Doxygen generated documentation, use the following command:
|
|
|
|
make dox
|
|
|
|
|
|
WINDOWS BUILD
|
|
=============
|
|
|
|
Prerequisites:
|
|
|
|
Microsoft Visual Studio 2005 or 2010.
|
|
|
|
One-time pre-build setup: [optional]
|
|
|
|
This step can be skipped if the dependencies are installed in their default locations. Otherwise,
|
|
the paths in the corresponding property sheets must be modified accordingly. Below is the content
|
|
of property sheets for Visual Studio 2005, which are located in the directory "build/vsprops".
|
|
Similarly, property sheets for Visual Studio 2010 can be found in the directory "build/props".
|
|
|
|
apr.vsprops
|
|
<UserMacro
|
|
Name="AprDir"
|
|
Value="$(SolutionDir)libs\apr"
|
|
/>
|
|
<UserMacro
|
|
Name="AprUtilDir"
|
|
Value="$(SolutionDir)libs\apr-util"
|
|
/>
|
|
|
|
sofiasip.vsprops
|
|
<UserMacro
|
|
Name="SofiaDir"
|
|
Value="$(SolutionDir)libs\sofia-sip"
|
|
/>
|
|
|
|
Procedure:
|
|
|
|
1. Open one of the available solution files:
|
|
* for Visual Studio 2005, use unimrcp.sln,
|
|
* for Visual Studio 2010, use unimrcp-2010.sln.
|
|
2. Choose a platform (Build -> Configuration Manager):
|
|
* win32
|
|
* x64.
|
|
3. Choose a configuration (Build -> Configuration Manager):
|
|
* Debug
|
|
* Release.
|
|
4. Build the solution (Build -> Build Solution).
|
|
|
|
One-time output directory setup:
|
|
|
|
Build the "prepare.vcproj" utility project by right clicking on the project icon from the Solution
|
|
Explorer (tools->prepare) and selecting the Build command from the context menu. This routine will
|
|
setup the output directory and copy all the required APR, APR-Util, and Sofia-SIP libraries as well
|
|
as the default configuration and data files. As a result, the output directory layout will look
|
|
like the following:
|
|
|
|
bin binaries (unimrcpserver, unimrcpclient, ...) and all the required dlls
|
|
conf configuration files (unimrcpserver.xml, unimrcpclient.xml, ...)
|
|
data data files
|
|
lib libraries
|
|
log log files
|
|
plugin run-time loadable modules
|