| 1 | ****************************************************************************** |
| 2 | * Copyright (c) 2000-2016 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 | * Contributors: |
| 8 | * Balasko, Jeno |
| 9 | * Baranyi, Botond |
| 10 | * Pilisi, Gergely |
| 11 | ****************************************************************************** |
| 12 | Cygwin setup |
| 13 | - If Cygwin is installed already, refresh your Cygwin installation |
| 14 | Titan is always build for the newest Cygwin version available. |
| 15 | Start the Cygwin setup utility (see below), it will refresh your |
| 16 | installed Cygwin packages to the newest versions. |
| 17 | - If Cygwin is not installed yet: |
| 18 | |
| 19 | (A) Download and execute the latest cygwin installer utility, |
| 20 | please use the 64-bit version installer: |
| 21 | https://cygwin.com/setup-x86_64.exe |
| 22 | |
| 23 | (B) Select Install from Internet (recommended to save local disk space) |
| 24 | |
| 25 | (C) Choose Cygwin installation root directory (C:\cygwin is recommended) |
| 26 | Select All Users, or Just Me. |
| 27 | |
| 28 | (D) Select "Local Package Directory" (typically the same directory, |
| 29 | where the setup....exe Cygwin installer utility is stored). |
| 30 | |
| 31 | (E) Use Internet Explorer Proxy Settings (recommended). |
| 32 | |
| 33 | (F) Select a download mirror site. |
| 34 | |
| 35 | (G) In the package selection dialog, |
| 36 | Note: You can select different views to find the required packages |
| 37 | easier and/or search the packages via the search field. |
| 38 | |
| 39 | There are 3 hierarchical levels of minimally required packages, |
| 40 | depending on your task. |
| 41 | Note: Cygwin installer will automatically select the packages the |
| 42 | manually selected ones are depending on; do NOT deselect |
| 43 | any automatically selected package! |
| 44 | a) Test execution ONLY (command line or from Eclipse Executor): |
| 45 | Base: <all packages> (Default setting of the installer) |
| 46 | Net: openssl |
| 47 | Tcl: expect |
| 48 | b) Test case development: in addition to the above select the |
| 49 | following packages: |
| 50 | Devel: binutils |
| 51 | Devel: gcc-g++ |
| 52 | Devel: make |
| 53 | Libs: libxml2-devel |
| 54 | Net: openssl-devel (automatically installs Net:openssl |
| 55 | as well, if selected) |
| 56 | c) To compile your own Titan Cygwin binary: in addition to the |
| 57 | above, select the following packages: |
| 58 | Devel: bison |
| 59 | Devel: ctags |
| 60 | Devel: cygwin32-expat |
| 61 | Devel: diffstat |
| 62 | Devel: flex |
| 63 | Devel: gcc-core |
| 64 | Editors: <any editor of your preference> (optional) |
| 65 | Libs: libncurses-devel |
| 66 | Libs: libreadline-devel |
| 67 | |
| 68 | If, after selecting the required packages and clicking on the |
| 69 | "Next" button, a "Resolving Dependcies" window lists further |
| 70 | required packages, ensure that the "Select required packages |
| 71 | (RECOMMENDED)" checkbox is checked and click the "Next" button. |
| 72 | |
| 73 | (H) Select the Create icon on Desktop checkbox |
| 74 | |
| 75 | (I) (Optional) |
| 76 | Your "unix" home directory, by default is: |
| 77 | <your cygwin installation directory>/home/<yourUserId> |
| 78 | If you are (also) working in command line mode, it is a good |
| 79 | practice to change this to the folder where your TTCN-3 projects |
| 80 | are. |
| 81 | Edit the file <your cygwin installation directory>/etc/passw: |
| 82 | In the line: |
| 83 | <yourUserId>:unused:<xxxxxx>:<yyyyy>:U-<yourDomain>\<yourUserId>, |
| 84 | S-1-5-21-nnnnnn...nnnnnn:/home/<yourUserId>:/bin/bash |
| 85 | |
| 86 | replace "/home/<yourUserId>" with the folder of your preference. |
| 87 | Note: you can access all Windows drives from Cygwin as |
| 88 | /cygdrive/<windowsDriveLetter>". |
| 89 | Example: to set your "unix" home directory to the "My_Home" folder |
| 90 | within your Windows Documents folder, you should replace |
| 91 | "/home/<yourUserId>" by |
| 92 | "/cygdrive/c/Users/<yourUserId>/Documents/My_Home" |
| 93 | WARNING: The path of your "unix" home directory shall not contain |
| 94 | any space! |
| 95 | |
| 96 | (I1)If you are working with Titan plugins for Eclipse or any Windows based program |
| 97 | using cygwin commands, insert the Windows equivalent path of cygwin folders "/bin" or/and "/usr/bin" |
| 98 | into the Windows environment variable "Path". For example if the cygwin root is "C:\cygwin64" then |
| 99 | Path should contain "C:\cygwin64\bin;C:\cygwin64\usr\bin". |
| 100 | |
| 101 | (J) Using the binary Titan package: download the Titan package for from |
| 102 | GitHub. Unpack the Titan package into a folder of your choice. |
| 103 | Note: It is not a requirement, but is a kind of best practice to |
| 104 | place Titan into a subfolder within your "unix" home directory. |
| 105 | Edit the <your cygwin installation directory>/home/<yourUserId>/.bashrc |
| 106 | file. Add these lines to it: |
| 107 | export PATH=${TTCN3_DIR}/bin:${PATH} |
| 108 | export LD_LIBRARY_PATH=${TTCN3_DIR}/lib:${LD_LIBRARY_PATH} |
| 109 | |
| 110 | (K) Compile Titan with Cygwin: |
| 111 | Get the latest source code from GitHub. |
| 112 | Download and install JDK from Oracle's download site: |
| 113 | http://www.oracle.com/technetwork/java/javase/downloads/index.html |
| 114 | Edit the <your cygwin installation directory>/home/<yourUserId>/.bashrc |
| 115 | as above. |
| 116 | Create titan/Makefile.personal with the following content: |
| 117 | TTCN3_DIR := /home/<user id>/git/titan/Install |
| 118 | JDKDIR := /home/<user id>/jdk |
| 119 | JNI := no |
| 120 | GUI := no |
| 121 | GEN_PDF := no |
| 122 | DEBUG := no |
| 123 | Compile Titan: |
| 124 | cd titan |
| 125 | make -j |
| 126 | make install |
| 127 | The compiled files will be placed into the titan/Install directory. |
| 128 | |
| 129 | (L) If you want to use graphical tools (like nedit for example), then you need to install the Cygwin/X |
| 130 | component too. The install procedure can be found at the homepage: |
| 131 | http://x.cygwin.com/docs/ug/cygwin-x-ug.html |
| 132 | |