Changeset 325:5133b45e3305 in freeDiameter
- Timestamp:
- May 20, 2010, 2:23:11 PM (14 years ago)
- Branch:
- default
- Phase:
- public
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
INSTALL
r304 r325 8 8 # make 9 9 10 Note: instead of passing options on the command line, you can use a CMake front-end (for example ccmake or cmake-gui) 11 or edit the CCmakeCache.txt file directly. If your cmake installation is recent, you can also do: 10 You can pass options to instruct cmake about which components to compile on the command-line. 11 You can also use a CMake front-end (for example ccmake or cmake-gui) or edit the CCmakeCache.txt file directly. 12 If your cmake installation is recent, the edit_cache target is a good help as well: 12 13 # mkdir build 13 14 # cd build 14 15 # cmake ../ 16 # make help 15 17 # make edit_cache 16 18 # make 17 19 18 19 You can enable the unary tests by doing: 20 You can enable the unit tests by doing: 20 21 # cmake -DSKIP_TESTS:BOOL=OFF ../ 21 22 # make … … 23 24 24 25 Note that there are dependencies on external tools that may not be enforced by the configure script. 25 See the specific INSTALL.distro files matching your situation. 26 27 You can configure which extensions to build with CMake: 28 IGNORE_ALL_EXTENSIONS:BOOL=OFF (or the following are ignored) 29 BUILD_SAMPLE:BOOL=ON 30 BUILD_DICT_NASREQ:BOOL=ON 31 BUILD_APP_RADGW:BOOL=ON 32 ... 33 34 You can change the default configuration file pathname: 35 DEFAULT_CONF_FILE:STRING=/path/to/some/freeDiameter.conf 36 37 Build binary with symbols, for debug: 38 CMAKE_BUILD_TYPE:STRING=Debug 26 See the specific INSTALL.* files for additional information. -
INSTALL.Ubuntu
r320 r325 1 1 See INSTALL file for general instructions on building freeDiameter. 2 2 3 On Ubuntu / Debian, the following packages are required (aptitude install ...): 3 4 freeDiameter has native support for Debian packaging. All related files 5 are in the directory "debian" of the distribution. 6 7 The following packages are required to compile freeDiameter from source: 4 8 cmake make gcc flex bison libsctp1 libsctp-dev libgnutls-dev libgcrypt-dev 5 9 … … 9 13 In order to build app_acct extension, you will also need the package libpq-dev. 10 14 11 Tested not working: Ubuntu Hardy (too old). 12 Tested working: Ubuntu Intrepid, Jaunty, Karmic, Lucid. Debian Lenny. 15 16 If your debhelper environment is recent, the following commands should 17 generate the freeDiameter packages for you: 18 19 # Install the dependencies for building the source: 20 sudo apt-get -y install mercurial cmake make gcc bison flex libsctp-dev libgnutls-dev libgcrypt-dev libpq-dev ssl-cert debhelper fakeroot 21 22 # Retrieve the latest version of the source package 23 cd 24 hg clone http://aaa.koganei.wide.ad.jp/hg/freeDiameter 25 cd freeDiameter 26 27 # Build the packages 28 fakeroot dh binary 29 30 # Install the packages 31 cd .. 32 sudo dpkg -i *.deb 33 34 35 # The following lines may help you getting started.... (execute as root) 36 ln -s /etc/ssl/certs/ssl-cert-snakeoil.pem /etc/ssl/certs/freeDiameter.pem 37 ln -s /etc/ssl/private/ssl-cert-snakeoil.key /etc/ssl/private/freeDiameter.key 38 zcat /usr/share/doc/freediameter-daemon/examples/freediameter.conf.sample.gz > /etc/freeDiameter/freeDiameter.conf 39 echo "Identity=\"localhost.localdomain\";" >> /etc/freeDiameter/freeDiameter.conf 40 freeDiameterd 41 42 =========================================== 43 44 freeDiameter has been tested on the following distributions: 45 Ubuntu Intrepid, Jaunty, Karmic, Lucid. 46 Debian Lenny. 47 48 (Ubuntu Hardy support is broken) 13 49 14 50 15 51 ===========================================- 16 Step by step instructions (with no prerequisite):52 Step by step instructions without using the debhelper tools: 17 53 18 54 1) Install all packages dependencies 19 # apt-get install mercurial cmake make gcc bison flex libsctp-dev libgnutls-dev libgcrypt-dev55 # sudo apt-get install mercurial cmake make gcc bison flex libsctp-dev libgnutls-dev libgcrypt-dev 20 56 21 57 2) (OPTION) If you will compile modules that require postgresql, also install: 22 # apt-get install libpq-dev58 # sudo apt-get install libpq-dev 23 59 24 60 3) (OPTION) If you want a more user-friendly interface, install this: 25 # apt-get install cmake-curses-gui61 # sudo apt-get install cmake-curses-gui 26 62 27 63 4) Retrieve the source files … … 33 69 34 70 6) Configure and generate the Makefiles 35 a) If you did not install ccmake in step 3:36 71 # cmake ../freeDiameter 37 38 b) If you did install ccmake: 39 # ccmake ../freeDiameter 40 - press 'c' (configure) 41 - toggle the values as needed (ex: BUILD_APP_RADGW=ON, ...) 42 - press 'c' again. New items may appear, iterate the process 43 - press 'c' and 'g' to complete the process 72 # make edit_cache 44 73 45 74 7) Compile all files: 46 75 # make 47 76 48 8) See available targets:77 8) (OPTION) See available targets: 49 78 # make help 50 79 … … 52 81 # make test 53 82 83 10) Install the software in configured locations: 84 # sudo make install 85 54 86 55 87 =========================================== 56 88 57 # You can alternatively do:58 apt-get -y install mercurial cmake make gcc bison flex libsctp-dev libgnutls-dev libgcrypt-dev libpq-dev ssl-cert debhelper59 cd /usr/src60 hg clone http://aaa.koganei.wide.ad.jp/hg/freeDiameter61 cd freeDiameter62 dh binary63 64 cd ..65 dpkg -i *.deb66 67 ln -s /etc/ssl/certs/ssl-cert-snakeoil.pem /etc/ssl/certs/freeDiameter.pem68 ln -s /etc/ssl/private/ssl-cert-snakeoil.key /etc/ssl/private/freeDiameter.key69 zcat /usr/share/doc/freediameter-daemon/examples/freediameter.conf.sample.gz > /etc/freeDiameter/freeDiameter.conf70 echo "Identity=\"localhost.localdomain\";" >> /etc/freeDiameter/freeDiameter.conf71 freeDiameterd -
README
r74 r325 1 The freeDiameter daemon implements the Diameter base protocol. 2 Loadable extensions add the logic of Diameter applications and advanced use of the daemon. 1 freeDiameter is an implementation of Diameter. 2 3 Diameter is a protocol designed to carry Authentication, Authorization and 4 Accounting (AAA) payload. It is an evolution of the RADIUS protocol (as the 5 name suggests). 6 7 Diameter is an extensible protocol. RFC3588 (currently under revision) defines the 8 Base Protocol that all Diameter nodes must support, while other documents define 9 the additional protocol support for specific applications. Such applications include 10 for example Network Access Servers (RFC4005), EAP (RFC4072), ... 11 12 13 The implementation consists in several components: 14 - libfreeDiameter : the shared library provides the functions to manipulate Diameter 15 messages and dictionary. This library is meant to be re-used for other projects 16 that would require parsing or manipulating Diameter messages. 17 18 - freeDiameterd : the daemon establishes the network connections with other Diameter 19 peers and performs the tasks described in Diameter Base Protocol, such as 20 watchdogs, basic routing, ... 21 22 - extensions : the extensions provide the mean to augment the features of the 23 freeDiameterd daemon. Extensions can provide the handling of a Diameter 24 application, but also advanced routing features, peer management, etc. 25 26 3 27 See http://aaa.koganei.wide.ad.jp/ for more information on the project. 28 4 29 freeDiameter was previously known as the "waaad" project (WIDE AAA Daemon) 5 30 … … 11 36 12 37 See INSTALL for information on building and using this software. 13 14 --------------15 Known possible bugs:16 - management of the Host-IP-Address values in CER/CEA may be strange (for TCP and SCTP)17
Note: See TracChangeset
for help on using the changeset viewer.