view INSTALL.Ubuntu @ 1449:ffe2f27e00e5

Update to 3GPP TS 29.272 V15.10.0 (2019-12) Add Restoration-Priority, Unsigned32, code 1663, section 7.3.174 Add SGs-MME-Identity, UTF8String, code 1664, section 7.3.175 Add SIPTO-Local-Network-Permission, Unsigned32, code 1665, section 7.3.176 Add Coupled-Node-Diameter-ID, DiameterIdentity, code 1666, section 7.3.177 Add WLAN-offloadability, Grouped, code 1667, section 7.3.181 Add WLAN-offloadability-EUTRAN, Unsigned32, code 1668, section 7.3.182 Add WLAN-offloadability-UTRAN, Unsigned32, code 1669, section 7.3.183 Add Reset-ID, OctetString, code 1670, section 7.3.184 Add MDT-Allowed-PLMN-Id, OctetString, code 1671, section 7.3.185 Add Adjacent-PLMNs, Grouped, code 1672, section 7.3.186 Add Adjacent-Access-Restriction-Data, Grouped, code 1673, section 7.3.187 Add DL-Buffering-Suggested-Packet-Count, Integer32, code 1674, section 7.3.188 Add IMSI-Group-Id, Grouped, code 1675, section 7.3.189 Add Group-Service-Id, Unsigned32, code 1676, section 7.3.190 Add Group-PLMN-Id, OctetString, code 1677, section 7.3.191 Add Local-Group-Id, OctetString, code 1678, section 7.3.192 Add AIR-Flags, Unsigned32, code 1679, section 7.3.201 Add UE-Usage-Type, Unsigned32, code 1680, section 7.3.202 Add Non-IP-PDN-Type-Indicator, Enumerated, code 1681, section 7.3.204 Add Non-IP-Data-Delivery-Mechanism, Unsigned32, code 1682, section 7.3.205 Add Additional-Context-ID, Unsigned32, code 1683, section 7.3.206 Add SCEF-Realm, DiameterIdentity, code 1684, section 7.3.207 Add Subscription-Data-Deletion, Grouped, code 1685, section 7.3.208 Add Emergency-Info, Grouped, code 1687, section 7.3.210 Add V2X-Subscription-Data, Grouped, code 1688, section 7.3.212 Add V2X-Permission, Unsigned32, code 1689, section 7.3.213 Add PDN-Connection-Continuity, Unsigned32, code 1690, section 7.3.214 Add eDRX-Cycle-Length, Grouped, code 1691, section 7.3.215 Add eDRX-Cycle-Length-Value, OctetString, code 1692, section 7.3.216 Add UE-PC5-AMBR, Unsigned32, code 1693, section 7.3.217 Add MBSFN-Area, Grouped, code 1694, section 7.3.219 Add MBSFN-Area-ID, Unsigned32, code 1695, section 7.3.220 Add Carrier-Frequency, Unsigned32, code 1696, section 7.3.221 Add RDS-Indicator, Enumerated, code 1697, section 7.3.222 Add Service-Gap-Time, Unsigned32, code 1698, section 7.3.223 Add Aerial-UE-Subscription-Information, Unsigned32, code 1699, section 7.3.224 Add Broadcast-Location-Assistance-Data-Types, Unsigned64, code 1700, section 7.3.225 Add Paging-Time-Window, Grouped, code 1701, section 7.3.226 Add Operation-Mode, Unsigned32, code 1702, section 7.3.227 Add Paging-Time-Window-Length, OctetString, code 1703, section 7.3.228 Add Core-Network-Restrictions, Unsigned32, code 1704, section 7.3.230 Add eDRX-Related-RAT, Grouped, code 1705, section 7.3.229 Add Interworking-5GS-Indicator, Enumerated, code 1706, section 7.3.231 Add Preferred-Data-Mode, Unsigned32, code 1686, section 7.3.209 3GPP TS 29.272 table 7.3.1/1 row Preferred-Data-Mode incorrectly has value type Grouped instead of Unsigned32, conflicting with clause 7.3.209.
author Luke Mewburn <luke@mewburn.net>
date Thu, 27 Feb 2020 23:20:31 +1100
parents e6b14a15d5f2
children 699c3fb0c57b
line wrap: on
line source

See http://www.freediameter.net/trac/wiki/DebRepository for instructions on how to
install freeDiameter from existing package.

See INSTALL file for general instructions on building freeDiameter from sources.

The remaining of this file contains specific instructions for building the freeDiameter 
package files for Debian and Ubuntu systems.




freeDiameter is shipped with the necessary files to generate the Debian package. 
All related files are in the directory "contrib/debian" of the distribution.
As a first step, you have to link this directory from your top-level dir:
  ln -s contrib/debian
 
============================================

The following packages are required to compile freeDiameter from source:
 cmake make gcc g++ flex bison libsctp1 libsctp-dev libgnutls-dev libgcrypt-dev libidn11-dev
 
(note that libidn and libsctp can be avoided by defining DISABLE_SCTP and DIAMID_IDNA_REJECT)
 
Additionnaly, these ones may be useful:
 mercurial gdb
 
Extensions additional dependencies:
 app_acct:
	libpq-dev

 app_sip:
 app_diameap:
 	libmysqlclient-dev
	
 dict_legacy_xml:
 	libxml2-dev
	
 dbg_interactive:
 	swig python-dev
	
============================================

If your debhelper environment is recent (> 7.3.9 for cmake support), 
the following commands should generate the freeDiameter packages for you:

# Install the dependencies for building the source:
sudo apt-get -y install mercurial cmake make gcc g++ bison flex libsctp-dev libgnutls-dev libgcrypt-dev libidn11-dev ssl-cert debhelper fakeroot \
   libpq-dev libmysqlclient-dev libxml2-dev swig python-dev
   
# On latest Ubuntu you will need libgnutls28-dev instead of libgnutls-dev

# Retrieve the latest version of the source package
cd 
hg clone http://www.freediameter.net/hg/freeDiameter
cd freeDiameter

# Prepare for Debian package
ln -s contrib/debian

# Build the packages
fakeroot dh binary

# Install the packages
cd ..
sudo dpkg -i *.deb


# The following lines may help you getting started.... (execute as root)
ln -s /etc/ssl/certs/ssl-cert-snakeoil.pem /etc/ssl/certs/freeDiameter.pem
ln -s /etc/ssl/private/ssl-cert-snakeoil.key /etc/ssl/private/freeDiameter.key
zcat /usr/share/doc/freediameter-daemon/examples/freediameter.conf.sample.gz > /etc/freeDiameter/freeDiameter.conf
echo "Identity=\"localhost.localdomain\";" >> /etc/freeDiameter/freeDiameter.conf
freeDiameterd

===========================================

freeDiameter is tested regularly on all current Ubuntu distributions since Intrepid (compiled from source as described below)
Ubuntu Hardy support is known to be broken.

The Debian package has been generated with success on Debian (>=Squeeze) and Ubuntu (>=Karmic).


===========================================-
Step by step instructions without using the debhelper tools:

1) Install all packages dependencies
# sudo apt-get install mercurial cmake make gcc g++ bison flex libsctp-dev libgnutls-dev libgcrypt-dev libidn11-dev

2) (OPTION) If you will compile modules that require postgresql, also install:
# sudo apt-get install libpq-dev
   and for mysql:
# sudo apt-get install libmysqlclient-dev

3) (OPTION) If you want a more user-friendly interface, install this:
# sudo apt-get install cmake-curses-gui

4) Retrieve the source files
# hg clone http://www.freediameter.net/hg/freeDiameter

5) Create a build directory, and enter it
# mkdir fDbuild
# cd fDbuild

6) Configure and generate the Makefiles
# cmake ../freeDiameter
# make edit_cache

7) Compile all files:
# make

8) (OPTION) See available targets:
# make help

9) (OPTION) Check the software has a correct basic behavior on your environment. -- only if you did not disable the tests in step 6
# make test

10) (OPTION) Install the software in configured locations:
# sudo make install


===========================================

Note: On Ubuntu Quantal Quetzal, you may have to force use of python 2.7 
library for the dbg_interactive extension, as on some systems CMake selects the 3.2 library
by default.
"Welcome to our mercurial repository"