Mercurial > hg > freeDiameter
annotate INSTALL.FreeBSD @ 1558:932fca1cbbe4
Added tag 1.5.0 for changeset 7c777b0082ec
author | Sebastien Decugis <sdecugis@freediameter.net> |
---|---|
date | Sat, 10 Oct 2020 12:58:37 +0800 |
parents | a0ab56aa089f |
children | 699c3fb0c57b |
rev | line source |
---|---|
234 | 1 See INSTALL file for general instructions on building freeDiameter. |
2 | |
3 ------------------ | |
4 QUICK INSTRUCTIONS | |
5 ------------------ | |
6 | |
643
f065e3cb846e
Updated documentation
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
559
diff
changeset
|
7 On FreeBSD-8.0 at least the following ports packages were required (should be same on FreeBSD-7.x): |
234 | 8 cmake flex bison gnutls |
9 | |
10 Then the cmake command had to look like: | |
921
a0ab56aa089f
Fix compilation when SCTP_USE_MAPPED_ADDRESSES is true, and add a note about this for FreeBSD (seems to be needed at least for FreeBSD 9.1)
Sebastien Decugis <sdecugis@freediameter.net>
parents:
707
diff
changeset
|
11 cmake -DFLEX_EXECUTABLE:FILEPATH=/usr/local/bin/flex -DSCTP_USE_MAPPED_ADDRESSES:BOOL=ON ... |
234 | 12 |
13 | |
14 --------------------- | |
15 COMPLETE INSTRUCTIONS | |
16 --------------------- | |
17 | |
18 1) If you don't have freeBSD yet: | |
19 Install minimal system + ports using initial installer /usr/sbin/sysinstall | |
20 | |
21 | |
707
e387d5c6b6f5
Added support for Internationalized Domain Names (IDNA) using GNU libidn
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
696
diff
changeset
|
22 2) Install 'cmake' |
234 | 23 |
24 a) from sources: | |
25 # cd /usr/ports/devel/cmake | |
26 # make install | |
27 | |
660
a8269458d5b1
Updated documentation
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
643
diff
changeset
|
28 b) or from package (don't forget to set your PACKAGEROOT appropriately. Ex: set PACKAGEROOT=ftp://ftp.jp.freebsd.org): |
234 | 29 # pkg_add -v -r cmake |
30 | |
31 | |
707
e387d5c6b6f5
Added support for Internationalized Domain Names (IDNA) using GNU libidn
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
696
diff
changeset
|
32 3) Install 'mercurial' (optional) |
e387d5c6b6f5
Added support for Internationalized Domain Names (IDNA) using GNU libidn
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
696
diff
changeset
|
33 (replace 'cmake' by 'mercurial' in the previous command) |
234 | 34 |
707
e387d5c6b6f5
Added support for Internationalized Domain Names (IDNA) using GNU libidn
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
696
diff
changeset
|
35 4) Install 'flex' and 'bison', same way. |
234 | 36 |
707
e387d5c6b6f5
Added support for Internationalized Domain Names (IDNA) using GNU libidn
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
696
diff
changeset
|
37 5) Install 'gnutls' and 'libidn', same way also. |
415
1f4aa49b26e4
Updated building instructions
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
351
diff
changeset
|
38 |
1f4aa49b26e4
Updated building instructions
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
351
diff
changeset
|
39 6) Retrieve freeDiameter source code: |
234 | 40 # cd ~ |
335
603791d2dcc4
Updated website information
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
323
diff
changeset
|
41 # /usr/local/bin/hg clone http://www.freediameter.net/hg/freeDiameter/ |
234 | 42 |
415
1f4aa49b26e4
Updated building instructions
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
351
diff
changeset
|
43 6b) Make a build directory |
234 | 44 # mkdir fD-build |
45 # cd fD-build | |
46 | |
47 7) Run cmake for freeDiameter (add other flags as you see fit, see INSTALL for more details) | |
921
a0ab56aa089f
Fix compilation when SCTP_USE_MAPPED_ADDRESSES is true, and add a note about this for FreeBSD (seems to be needed at least for FreeBSD 9.1)
Sebastien Decugis <sdecugis@freediameter.net>
parents:
707
diff
changeset
|
48 # /usr/local/bin/cmake -DFLEX_EXECUTABLE:FILEPATH=/usr/local/bin/flex -DSCTP_USE_MAPPED_ADDRESSES:BOOL=ON ../freeDiameter |
234 | 49 |
323
f34646a91dbc
Updated FreeBSD notes
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
290
diff
changeset
|
50 8) Compile, optionnaly test |
f34646a91dbc
Updated FreeBSD notes
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
290
diff
changeset
|
51 # make |
f34646a91dbc
Updated FreeBSD notes
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
290
diff
changeset
|
52 # make test |
f34646a91dbc
Updated FreeBSD notes
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
290
diff
changeset
|
53 |
f34646a91dbc
Updated FreeBSD notes
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
290
diff
changeset
|
54 9) Install |
f34646a91dbc
Updated FreeBSD notes
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
290
diff
changeset
|
55 # make install |
f34646a91dbc
Updated FreeBSD notes
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
290
diff
changeset
|
56 |
643
f065e3cb846e
Updated documentation
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
559
diff
changeset
|
57 10) Run (the install path can be changed during cmake step): |
323
f34646a91dbc
Updated FreeBSD notes
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
290
diff
changeset
|
58 # /usr/local/bin/freeDiameterd --help |
238
62eaf631eb61
Fix compilation issue when gnutls is not in standard directory
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
234
diff
changeset
|
59 |
239
aba4342b5916
Update status on freeBSD -- still, not running well
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
238
diff
changeset
|
60 |
290
7842bed901ca
Updated documentation
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
249
diff
changeset
|
61 ------------------------------ |
7842bed901ca
Updated documentation
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
249
diff
changeset
|
62 app_acct test ADDITIONAL STEPS |
7842bed901ca
Updated documentation
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
249
diff
changeset
|
63 ------------------------------ |
7842bed901ca
Updated documentation
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
249
diff
changeset
|
64 Here is additional steps in order to run the test for app_acct |
239
aba4342b5916
Update status on freeBSD -- still, not running well
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
238
diff
changeset
|
65 |
290
7842bed901ca
Updated documentation
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
249
diff
changeset
|
66 1) Install the required packages |
7842bed901ca
Updated documentation
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
249
diff
changeset
|
67 # pkg_add -v -r postgresql84-client |
7842bed901ca
Updated documentation
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
249
diff
changeset
|
68 # pkg_add -v -r postgresql84-server |
7842bed901ca
Updated documentation
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
249
diff
changeset
|
69 |
7842bed901ca
Updated documentation
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
249
diff
changeset
|
70 2) Prepare access to the database: |
7842bed901ca
Updated documentation
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
249
diff
changeset
|
71 # echo postgresql_enable=YES >> /etc/rc.conf |
7842bed901ca
Updated documentation
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
249
diff
changeset
|
72 # /usr/local/etc/rc.d/postgresql initdb |
7842bed901ca
Updated documentation
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
249
diff
changeset
|
73 # su - pgsql |
7842bed901ca
Updated documentation
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
249
diff
changeset
|
74 > /usr/local/bin/pg_ctl -D /usr/local/pgsql/data -l logfile start |
7842bed901ca
Updated documentation
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
249
diff
changeset
|
75 > /usr/local/bin/createuser root |
7842bed901ca
Updated documentation
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
249
diff
changeset
|
76 Shall the new user be allowed to create databases? (y/n) y |
7842bed901ca
Updated documentation
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
249
diff
changeset
|
77 > logout |
7842bed901ca
Updated documentation
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
249
diff
changeset
|
78 # /usr/local/bin/createdb root |
7842bed901ca
Updated documentation
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
249
diff
changeset
|
79 # /usr/local/bin/psql root |
7842bed901ca
Updated documentation
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
249
diff
changeset
|
80 root=# CREATE TABLE incoming_test ( |
7842bed901ca
Updated documentation
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
249
diff
changeset
|
81 root(# recorded_on timestamp with time zone NOT NULL, |
7842bed901ca
Updated documentation
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
249
diff
changeset
|
82 root(# "Accounting-Record-Type" integer, |
351
0aa95dd79d0f
Fix erroneous quote sign
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
335
diff
changeset
|
83 root(# "Session-Id" bytea, |
290
7842bed901ca
Updated documentation
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
249
diff
changeset
|
84 root(# "Accounting-Record-Number" integer, |
7842bed901ca
Updated documentation
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
249
diff
changeset
|
85 root(# "Route-Record1" bytea, |
7842bed901ca
Updated documentation
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
249
diff
changeset
|
86 root(# "Route-Record2" bytea, |
7842bed901ca
Updated documentation
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
249
diff
changeset
|
87 root(# "Route-Record3" bytea, |
7842bed901ca
Updated documentation
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
249
diff
changeset
|
88 root(# "Route-Record4" bytea ); |
7842bed901ca
Updated documentation
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
249
diff
changeset
|
89 root=# \q |
7842bed901ca
Updated documentation
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
249
diff
changeset
|
90 |
7842bed901ca
Updated documentation
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
249
diff
changeset
|
91 3) configure the sources |
323
f34646a91dbc
Updated FreeBSD notes
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
290
diff
changeset
|
92 # make edit_cache |
290
7842bed901ca
Updated documentation
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
249
diff
changeset
|
93 BUILD_APP_ACCT:BOOL=ON |
7842bed901ca
Updated documentation
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
249
diff
changeset
|
94 TEST_APP_ACCT:BOOL=ON |
7842bed901ca
Updated documentation
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
249
diff
changeset
|
95 TEST_APP_ACCT_CONNINFO:STRING="user=root dbname=root" |
7842bed901ca
Updated documentation
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
249
diff
changeset
|
96 |
7842bed901ca
Updated documentation
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
249
diff
changeset
|
97 4) run the test |
660
a8269458d5b1
Updated documentation
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
643
diff
changeset
|
98 # tests/testappacct -d |
290
7842bed901ca
Updated documentation
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
249
diff
changeset
|
99 or |
7842bed901ca
Updated documentation
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
249
diff
changeset
|
100 # make test |
7842bed901ca
Updated documentation
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
249
diff
changeset
|
101 |
7842bed901ca
Updated documentation
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
249
diff
changeset
|
102 |
696
ff23fecac0b2
Added documentation for rare segfault in FreeBSD 64bits (Profiling profile)
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
660
diff
changeset
|
103 ---------------------------------- |
ff23fecac0b2
Added documentation for rare segfault in FreeBSD 64bits (Profiling profile)
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
660
diff
changeset
|
104 Segmentation fault on program exit |
ff23fecac0b2
Added documentation for rare segfault in FreeBSD 64bits (Profiling profile)
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
660
diff
changeset
|
105 ---------------------------------- |
ff23fecac0b2
Added documentation for rare segfault in FreeBSD 64bits (Profiling profile)
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
660
diff
changeset
|
106 |
ff23fecac0b2
Added documentation for rare segfault in FreeBSD 64bits (Profiling profile)
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
660
diff
changeset
|
107 In case you encounter a segmentation fault on program termination like this: |
ff23fecac0b2
Added documentation for rare segfault in FreeBSD 64bits (Profiling profile)
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
660
diff
changeset
|
108 [...] |
ff23fecac0b2
Added documentation for rare segfault in FreeBSD 64bits (Profiling profile)
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
660
diff
changeset
|
109 freeDiameterd framework is terminated. |
ff23fecac0b2
Added documentation for rare segfault in FreeBSD 64bits (Profiling profile)
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
660
diff
changeset
|
110 Segmentation fault: 11 (core dumped) |
ff23fecac0b2
Added documentation for rare segfault in FreeBSD 64bits (Profiling profile)
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
660
diff
changeset
|
111 |
ff23fecac0b2
Added documentation for rare segfault in FreeBSD 64bits (Profiling profile)
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
660
diff
changeset
|
112 with a backtrace like this: |
ff23fecac0b2
Added documentation for rare segfault in FreeBSD 64bits (Profiling profile)
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
660
diff
changeset
|
113 #0 0x0000000801a414a0 in ?? () |
ff23fecac0b2
Added documentation for rare segfault in FreeBSD 64bits (Profiling profile)
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
660
diff
changeset
|
114 #1 0x0000000800f99274 in __cxa_finalize () from /lib/libc.so.7 |
ff23fecac0b2
Added documentation for rare segfault in FreeBSD 64bits (Profiling profile)
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
660
diff
changeset
|
115 #2 0x0000000800f460b7 in exit () from /lib/libc.so.7 |
ff23fecac0b2
Added documentation for rare segfault in FreeBSD 64bits (Profiling profile)
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
660
diff
changeset
|
116 |
ff23fecac0b2
Added documentation for rare segfault in FreeBSD 64bits (Profiling profile)
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
660
diff
changeset
|
117 You may try to add the following compilation directive in cmake: |
ff23fecac0b2
Added documentation for rare segfault in FreeBSD 64bits (Profiling profile)
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
660
diff
changeset
|
118 -DSKIP_DLCLOSE:BOOL=ON |
ff23fecac0b2
Added documentation for rare segfault in FreeBSD 64bits (Profiling profile)
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
660
diff
changeset
|
119 |
ff23fecac0b2
Added documentation for rare segfault in FreeBSD 64bits (Profiling profile)
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
660
diff
changeset
|
120 Note: this segmentation fault was experienced with: |
ff23fecac0b2
Added documentation for rare segfault in FreeBSD 64bits (Profiling profile)
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
660
diff
changeset
|
121 - FreeBSD 8.1 |
ff23fecac0b2
Added documentation for rare segfault in FreeBSD 64bits (Profiling profile)
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
660
diff
changeset
|
122 - 64 bits architecture only. |
ff23fecac0b2
Added documentation for rare segfault in FreeBSD 64bits (Profiling profile)
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
660
diff
changeset
|
123 - Profiling mode only. |
ff23fecac0b2
Added documentation for rare segfault in FreeBSD 64bits (Profiling profile)
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
660
diff
changeset
|
124 |
ff23fecac0b2
Added documentation for rare segfault in FreeBSD 64bits (Profiling profile)
Sebastien Decugis <sdecugis@nict.go.jp>
parents:
660
diff
changeset
|
125 |