Commit | Line | Data |
---|---|---|
af710487 | 1 | ****************************************************************************** |
2 | * Copyright (c) 2000-2015 Ericsson Telecom AB | |
3 | * All rights reserved. This program and the accompanying materials | |
4 | * are made available under the terms of the Eclipse Public License v1.0 | |
5 | * which accompanies this distribution, and is available at | |
6 | * http://www.eclipse.org/legal/epl-v10.html | |
7 | ****************************************************************************** | |
8 | ||
9 | Build and install Titan on Linux | |
10 | ||
11 | 1.Install required libraries: | |
12 | (examples are given for Ubuntu 12.04/14.04; for other Linuxes, pls. use the relevant library installation method) | |
13 | ||
14 | sudo apt-get install g++ expect libssl-dev libxml2-dev libncurses5-dev flex bison | |
15 | xutils-dev is needed by makedepend: | |
16 | sudo apt-get install xutils-dev | |
17 | The following packages may be needed for titan_eclipse/automatic_build: | |
18 | sudo apt-get install ant xsltproc | |
19 | ||
3abe9331 | 20 | 2.Clone the titan directory from git into /home/<user_id>/titan.core |
af710487 | 21 | |
3abe9331 | 22 | git clone https://github.com/eclipse/titan.core titan.core |
af710487 | 23 | |
24 | 3. Configure the build | |
25 | ||
3abe9331 | 26 | cd titan.core |
af710487 | 27 | check that MakefileFOSS.cfg is present and has the following content: |
28 | cat MakefileFOSS.cfg | |
29 | ||
30 | # Configurations for the Free Open Source Software version | |
31 | LICENSING := no | |
32 | USAGE_STATS := no | |
33 | ||
34 | ||
84f1fa09 | 35 | Several build options are possible; for details on options, please read through the Makefile.cfg. |
af710487 | 36 | Options can be overridden by the content of a file named Makefile.personal which can be used to |
37 | adapt to local installation directories, change config options etc. | |
38 | Below, a small number of typical scenarios are presented. | |
39 | ||
3abe9331 | 40 | a) JNI disabled |
af710487 | 41 | |
42 | The JNI interface is used by the Eclipse Titan Executor or by the Java Executor API. | |
43 | If you don't need them , Titan can be compiled without JNI. | |
44 | ||
3abe9331 | 45 | Create ~/titan.core/Makefile.personal to override settings in Makefile.cfg with the following content: |
af710487 | 46 | (replace paths with values relevant to your installation) |
47 | ||
3abe9331 | 48 | TTCN3_DIR := /home/<user id>/titan.core/Install |
af710487 | 49 | OPENSSL_DIR := /usr |
50 | #JDKDIR := /usr/lib/jvm/java-7-openjdk-amd64 | |
51 | XMLDIR := /usr | |
52 | JNI := no | |
53 | GEN_PDF := no | |
54 | ||
55 | ||
56 | ||
3abe9331 | 57 | b) JNI enabled |
af710487 | 58 | |
59 | install JDK into /home/<user id>/jdk | |
60 | ||
3abe9331 | 61 | Create ~/titan.core/Makefile.personal to override settings in Makefile.cfg with the following content: |
af710487 | 62 | (replace paths with values relevant to your installation) |
63 | ||
3abe9331 | 64 | TTCN3_DIR := /home/<user id>/titan.core/Install |
af710487 | 65 | OPENSSL_DIR := /usr |
66 | JDKDIR := /usr/lib/jvm/java-7-openjdk-amd64 | |
67 | XMLDIR := /usr | |
68 | JNI := yes | |
69 | GEN_PDF := no | |
70 | ||
71 | ||
72 | ||
f99e8b7f | 73 | 4. Run make |
af710487 | 74 | |
75 | make | |
76 | ||
f99e8b7f | 77 | 5. Set environment variables |
af710487 | 78 | |
3abe9331 | 79 | setenv TTCN3_DIR /home/<user id>/titan.core/Install |
775259be EL |
80 | setenv PATH /home/<userid>/titan.core/Install/bin/:${PATH} |
81 | setenv LD_LIBRARY_PATH /home/<userid>/titan.core/Install/lib:${LD_LIBRARY_PATH} | |
af710487 | 82 | |
775259be | 83 | for csh |
60f48d67 | 84 | |
775259be | 85 | or |
60f48d67 | 86 | |
3abe9331 | 87 | export TTCN3_DIR=/home/<user id>/titan.core/Install |
775259be EL |
88 | export PATH=/home/<userid>/titan.core/Install/bin/:${PATH} |
89 | export LD_LIBRARY_PATH=/home/<userid>/titan.core/Install/lib:${LD_LIBRARY_PATH} | |
60f48d67 | 90 | |
775259be | 91 | for bash |
60f48d67 | 92 | |
f99e8b7f | 93 | 6. Run make install |
60f48d67 | 94 | |
775259be | 95 | make install |
60f48d67 | 96 | |
3abe9331 | 97 | This will install Titan into /home/<user id>/titan.core/Install |
af710487 | 98 | |
99 | ||
59290771 | 100 | 7. Optionally, run function/regression tests |
af710487 | 101 | |
3abe9331 | 102 | cd /home/<user id>/titan.core/function_test |
af710487 | 103 | |
104 | in the following Makefiles | |
105 | ||
3abe9331 | 106 | BER_EncDec/Makefile |
af710487 | 107 | XER_EncDec/Makefile |
108 | Text_EncDec/Makefile | |
109 | RAW_EncDec/Makefile | |
110 | ||
111 | edit the value of XMLDIR to match your installation values | |
112 | ||
113 | run the tests | |
114 | ||
115 | make | |
116 | ||
117 | ( or make |& tee outputfile if you want to save the output for verification) | |
118 | ||
3abe9331 | 119 | cd /home/<user id>/titan.core/regression_test |
af710487 | 120 | make run |
121 | ||
122 | ( or make run |& tee outputfile if you want to save the output for verification) | |
123 | ||
124 | These tests might run for half an hour (regr.tests) to two hours (func.tests) | |
125 | ||
9070be50 | 126 | 8. Optionally, copy Titan into its final directory. |
3d45a1be | 127 | From here on, you can continue with the Titan installation guide, see /Install/docs, to set/change environment variables etc. |