forked from szberes/titan.core
-
Notifications
You must be signed in to change notification settings - Fork 0
/
README.linux
178 lines (116 loc) · 5.1 KB
/
README.linux
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
******************************************************************************
* Copyright (c) 2000-2018 Ericsson Telecom AB
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v2.0
* which accompanies this distribution, and is available at
* https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.html
* Contributors:
* Balasko, Jeno
* Baranyi, Botond
* Lelik, Elemer
* Pilisi, Gergely
* Szabados, Kristof
******************************************************************************
Build and install Titan on Linux
1.Install required libraries:
(examples are given for Ubuntu 12.04/14.04; for other Linuxes, pls. use the relevant library installation method)
sudo apt-get install g++ expect libssl-dev libxml2-dev libncurses5-dev flex bison
xutils-dev is needed by makedepend:
sudo apt-get install xutils-dev
The following packages may be needed for titan_eclipse/automatic_build:
sudo apt-get install ant xsltproc
2.Clone or update the titan directory from git into /home/<user_id>/titan.core
cd /home/<user_id>/
git clone https://github.com/eclipse/titan.core.git titan.core
or
Update the already existing local repository:
cd /home/<user_id>/titan.core
git pull https://github.com/eclipse/titan.core.git
3. Configure the build
cd titan.core
For open source users: check that MakefileFOSS.cfg is present and has the following content:
cat MakefileFOSS.cfg
# Configurations for the Free Open Source Software version
LICENSING := no
USAGE_STATS := no
If you want to use your build within the Ericsson domain: delete MakefileFOSS.cfg
This will enable Ericsson internal-only licensing and statistics.
GEN_PDF set to yes will convert Word documents to PDF using a web service available within Ericsson only.
Alternatively, one can install libreoffice and convert the documentation files as below:
cd titan.core/userguide
libreoffice -convert-to pdf *.doc *.docx
Several other build options are possible; for details on options please read through the Makefile.cfg.
Options can be overridden by the content of a file named Makefile.personal which can be used to
adapt to local installation directories, change config options etc.
Below, a small number of typical scenarios are presented.
Note: For each scenario below on Raspberry Pi "-fsigned-char" needs to be added to compiler flags in Makefile.personal:
COMPILERFLAGS := -Wall -fsigned-char
a) JNI disabled, gcc compiler (default)
The JNI interface is used by the Eclipse Titan Executor or by the Java Executor API.
If you don't need them, Titan can be compiled without JNI.
Create ~/titan.core/Makefile.personal to override settings in Makefile.cfg with the following content:
(replace paths with values relevant to your installation)
TTCN3_DIR := /home/<user id>/titan.core/Install
OPENSSL_DIR := /usr
#JDKDIR := /usr/lib/jvm/java-7-openjdk-amd64
XMLDIR := /usr
JNI := no
GEN_PDF := no
b) JNI disabled, clang compiler ver. 3.8
Create ~/titan.core/Makefile.personal to override settings in Makefile.cfg with the following content:
(replace paths with values relevant to your installation).
TTCN3_DIR := /home/<user id>/titan.core/Install
OPENSSL_DIR := /usr
#JDKDIR := /usr/lib/jvm/java-7-openjdk-amd64
XMLDIR := /usr
JNI := no
GEN_PDF := no
CXX := clang++-3.8
CC := clang-3.8
c) JNI enabled, gcc compiler (default)
install JDK into /home/<user id>/jdk
Create ~/titan.core/Makefile.personal to override settings in Makefile.cfg with the following content:
(replace paths with values relevant to your installation).
TTCN3_DIR := /home/<user id>/titan.core/Install
OPENSSL_DIR := /usr
JDKDIR := /usr/lib/jvm/java-7-openjdk-amd64
XMLDIR := /usr
JNI := yes
GEN_PDF := no
d) For Alpine Linux, an appropriate flag has to be set:
:
ALPINE_LINUX := yes
:
4. Run make
make
5. Set environment variables
setenv TTCN3_DIR /home/<user id>/titan.core/Install
setenv PATH /home/<userid>/titan.core/Install/bin/:${PATH}
setenv LD_LIBRARY_PATH /home/<userid>/titan.core/Install/lib:${LD_LIBRARY_PATH}
for csh
or
export TTCN3_DIR=/home/<user id>/titan.core/Install
export PATH=/home/<userid>/titan.core/Install/bin/:${PATH}
export LD_LIBRARY_PATH=/home/<userid>/titan.core/Install/lib:${LD_LIBRARY_PATH}
for bash
6. Run make install
make install
This will install Titan into /home/<user id>/titan.core/Install
7. Optionally , run function/regression tests
cd /home/<user id>/titan.core/function_test
in the following Makefiles
BER_EncDec/Makefile
XER_EncDec/Makefile
Text_EncDec/Makefile
RAW_EncDec/Makefile
edit the value of XMLDIR to match your installation values
run the tests
make
( or make |& tee outputfile if you want to save the output for verification)
cd /home/<user id>/titan.core/regression_test
make run
( or make run |& tee outputfile if you want to save the output for verification)
These tests might run for half an hour (regr.tests) to two hours (func.tests)
8. Optionally, copy Titan into its final directory.
From here on, you can continue with the Titan installation guide, see /Install/docs, to set/change environment variables etc.
and then, optionally, the Eclipse installation guide.