view INSTALL.Ubuntu @ 1489:0210b996b8fa

Add rest of 3GPP TS 29.336 V15.7.0 (2019-09) Add AVPs from 3GPP TS 29.336: - IP-SM-GW-Number, OctetString, code 3100, section 6.4.14 - IP-SM-GW-Name, DiameterIdentity, code 3101, section 6.4.15 - User-Identifier, Grouped, code 3102, section 6.4.2 - Service-ID, Enumerated, code 3103, section 6.4.3 - SCS-Identity, OctetString, code 3104, section 6.4.4 - Service-Parameters, Grouped, code 3105, section 6.4.5 - T4-Parameters, Grouped, code 3106, section 6.4.6 - Service-Data, Grouped, code 3107, section 6.4.7 - T4-Data, Grouped, code 3108, section 6.4.8 - HSS-Cause, Unsigned32, code 3109, section 6.4.9 - SIR-Flags, Unsigned32, code 3110, section 6.4.10 - IP-SM-GW-Realm, DiameterIdentity, code 3112, section 6.4.18 - AESE-Communication-Pattern, Grouped, code 3113, section 8.4.25 - Communication-Pattern-Set, Grouped, code 3114, section 8.4.26 - Periodic-Communication-Indicator, Unsigned32, code 3115, section 8.4.27 - Communication-Duration-Time, Unsigned32, code 3116, section 8.4.28 - Periodic-time, Unsigned32, code 3117, section 8.4.29 - Scheduled-Communication-Time, Grouped, code 3118, section 8.4.30 - Stationary-Indication, Unsigned32, code 3119, section 8.4.31 - AESE-Communication-Pattern-Config-Status, Grouped, code 3120, section 8.4.32 - AESE-Error-Report, Grouped, code 3121, section 8.4.33 - Monitoring-Event-Configuration, Grouped, code 3122, section 8.4.2 - Monitoring-Event-Report, Grouped, code 3123, section 8.4.3 - SCEF-Reference-ID, Unsigned32, code 3124, section 8.4.4 - SCEF-ID, DiameterIdentity, code 3125, section 8.4.5 - SCEF-Reference-ID-for-Deletion, Unsigned32, code 3126, section 8.4.6 - Monitoring-Type, Unsigned32, code 3127, section 8.4.7 - Maximum-Number-of-Reports, Unsigned32, code 3128, section 8.4.8 - UE-Reachability-Configuration, Grouped, code 3129, section 8.4.9 - Monitoring-Duration, Time, code 3130, section 8.4.10 - Maximum-Detection-Time, Unsigned32, code 3131, section 8.4.11 - Reachability-Type, Unsigned32, code 3132, section 8.4.12 - Maximum-Latency, Unsigned32, code 3133, section 8.4.13 - Maximum-Response-Time, Unsigned32, code 3134, section 8.4.14 - Location-Information-Configuration, Grouped, code 3135, section 8.4.15 - MONTE-Location-Type, Unsigned32, code 3136, section 8.4.16 - Accuracy, Unsigned32, code 3137, section 8.4.17 - Association-Type, Unsigned32, code 3138, section 8.4.18 - Roaming-Information, Unsigned32, code 3139, section 8.4.19 - Reachability-Information, Unsigned32, code 3140, section 8.4.20 - IMEI-Change, Unsigned32, code 3141, section 8.4.22 - Monitoring-Event-Config-Status, Grouped, code 3142, section 8.4.24 - Supported-Services, Grouped, code 3143, section 8.4.40 - Supported-Monitoring-Events, Unsigned64, code 3144, section 8.4.41 - CIR-Flags, Unsigned32, code 3145, section 8.4.39 - Service-Result, Grouped, code 3146, section 8.4.37 - Service-Result-Code, Unsigned32, code 3147, section 8.4.38 - Reference-ID-Validity-Time, Time, code 3148, section 8.4.42 - Event-Handling, Unsigned32, code 3149, section 8.4.43 - NIDD-Authorization-Request, Grouped, code 3150, section 8.4.44 - NIDD-Authorization-Response, Grouped, code 3151, section 8.4.45 - Service-Report, Grouped, code 3152, section 8.4.47 - Node-Type, Unsigned32, code 3153, section 8.4.48 - S6t-HSS-Cause, Unsigned32, code 3154, section 8.4.50 - Enhanced-Coverage-Restriction, Grouped, code 3155, section 8.4.51 - Enhanced-Coverage-Restriction-Data, Grouped, code 3156, section 8.4.52 - Restricted-PLMN-List, Grouped, code 3157, section 8.4.53 - Allowed-PLMN-List, Grouped, code 3158, section 8.4.54 - Requested-Validity-Time, Time, code 3159, section 8.4.55 - Granted-Validity-Time, Time, code 3160, section 8.4.56 - NIDD-Authorization-Update, Grouped, code 3161, section 8.4.57 - Loss-Of-Connectivity-Reason, Unsigned32, code 3162, section 8.4.58 - Group-Reporting-Guard-Timer, Unsigned32, code 3163, section 8.4.59 - CIA-Flags, Unsigned32, code 3164, section 8.4.60 - Group-Monitoring-Event-Report, Grouped, code 3165, section 8.4.61 - Group-Monitoring-Event-Report-Item, Grouped, code 3166, section 8.4.62 - RIR-Flags, Unsigned32, code 3167, section 8.4.63 - Type-Of-External-Identifier, Unsigned32, code 3168, section 8.4.64 - APN-Validity-Time, Grouped, code 3169, section 8.4.65 - Suggested-Network-Configuration, Grouped, code 3170, section 8.4.66 - Monitoring-Event-Report-Status, Grouped, code 3171, section 8.4.67 - PLMN-ID-Requested, Enumerated, code 3172, section 8.4.68 - AdditionalIdentifiers, Grouped, code 3173, section 8.4.69 - NIR-Flags, Unsigned32, code 3174, section 8.4.70 - Reporting-Time-Stamp, Time, code 3175, section 8.4.71 - NIA-Flags, Unsigned32, code 3176, section 8.4.72 - Group-User-Identifier, Grouped, code 3177, section 8.4.73 - MTC-Provider-Info, Grouped, code 3178, section 8.4.74 - MTC-Provider-ID, UTF8String, code 3179, section 8.4.75
author Luke Mewburn <luke@mewburn.net>
date Mon, 30 Mar 2020 09:49:33 +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"