1 | #!/bin/bash |
---|
2 | # |
---|
3 | # Installs tools and libraries needed to run, compile or develop ARB on Ubuntu. |
---|
4 | # |
---|
5 | # Tested with: |
---|
6 | # * Ubuntu 20.04 LTS |
---|
7 | # * Debian 11 |
---|
8 | # |
---|
9 | # Previous versions of this script are available at |
---|
10 | # http://bugs.arb-home.de/export/18373/trunk/SH/arb_installubuntu4arb.sh (Linux Mint 19; Ubuntu 18.04 LTS) |
---|
11 | # http://bugs.arb-home.de/export/14798/trunk/SH/arb_installubuntu4arb.sh (Ubuntu 16.04 LTS) |
---|
12 | # http://bugs.arb-home.de/export/14409/trunk/SH/arb_installubuntu4arb.sh (older) |
---|
13 | # |
---|
14 | # [ May as well work with other ubuntu flavors or debian. |
---|
15 | # Please report working tests and/or send needed changes to devel@arb-home.de |
---|
16 | # ] |
---|
17 | |
---|
18 | listwords() { |
---|
19 | if [ ! -z "$1" ]; then |
---|
20 | echo " $1" |
---|
21 | shift |
---|
22 | listwords $* |
---|
23 | fi |
---|
24 | } |
---|
25 | |
---|
26 | SELF=${0} |
---|
27 | CMD=${1:-} |
---|
28 | |
---|
29 | if [ -z ${CMD} ]; then |
---|
30 | echo "" |
---|
31 | echo "Usage: arb_installubuntu4arb.sh what [openGL]" |
---|
32 | echo "" |
---|
33 | echo "If optional parameter 'openGL' is specified," |
---|
34 | echo "packages needed for ARB with openGL get installed." |
---|
35 | echo "(Note: currently does only work with what=arb and old os version)" |
---|
36 | echo "" |
---|
37 | echo "what installs" |
---|
38 | echo "------- ---------------------------------------------------" |
---|
39 | echo "arb things needed to run ARB" |
---|
40 | echo "compile things needed to compile and run ARB" |
---|
41 | echo "develop like 'compile' plus some optional development tools" |
---|
42 | echo "devdox like 'develop' plus things needed for doxygen (big)" |
---|
43 | echo "" |
---|
44 | echo "(Note: script contains pointers to older versions of itself)" |
---|
45 | echo "" |
---|
46 | else |
---|
47 | # other parameters |
---|
48 | if [ "$CMD" == "echo" ]; then |
---|
49 | shift |
---|
50 | fi |
---|
51 | |
---|
52 | WHAT=${1:-} |
---|
53 | OPENGL=${2:-} |
---|
54 | |
---|
55 | if [ "$CMD" == "echo" ]; then |
---|
56 | if [ "$WHAT" == "arb" ]; then |
---|
57 | echo \ |
---|
58 | gnuplot \ |
---|
59 | gv \ |
---|
60 | libmotif-common \ |
---|
61 | libxerces-c-dev \ |
---|
62 | libgomp1 \ |
---|
63 | transfig \ |
---|
64 | xfig \ |
---|
65 | xterm \ |
---|
66 | |
---|
67 | # dependency for motif library itself (e.g. libxm4) is handled either via libglw1-mesa or via libmotif-dev below. |
---|
68 | |
---|
69 | if [ "$OPENGL" == "openGL" ]; then |
---|
70 | echo \ |
---|
71 | libpng16-16 \ |
---|
72 | libglw1-mesa \ |
---|
73 | |
---|
74 | else |
---|
75 | echo \ |
---|
76 | libmotif-dev \ |
---|
77 | |
---|
78 | fi |
---|
79 | |
---|
80 | elif [ "$WHAT" == "compile" ]; then |
---|
81 | ${SELF} echo arb ${OPENGL} |
---|
82 | echo \ |
---|
83 | autoconf \ |
---|
84 | automake \ |
---|
85 | g++ \ |
---|
86 | libboost-filesystem-dev \ |
---|
87 | libboost-iostreams-dev \ |
---|
88 | libboost-program-options-dev \ |
---|
89 | libboost-random-dev \ |
---|
90 | libboost-system-dev \ |
---|
91 | libboost-thread-dev \ |
---|
92 | libboost-test-dev \ |
---|
93 | libglib2.0-dev \ |
---|
94 | libreadline-dev \ |
---|
95 | libtbb-dev \ |
---|
96 | libtiff5-dev \ |
---|
97 | libtool \ |
---|
98 | libx11-dev \ |
---|
99 | libxaw7-dev \ |
---|
100 | libxext-dev \ |
---|
101 | libxml2-utils \ |
---|
102 | libxpm-dev \ |
---|
103 | libxt-dev \ |
---|
104 | lynx \ |
---|
105 | make \ |
---|
106 | time \ |
---|
107 | xsltproc \ |
---|
108 | |
---|
109 | if [ "$OPENGL" == "openGL" ]; then |
---|
110 | echo \ |
---|
111 | freeglut3-dev \ |
---|
112 | libglew-dev \ |
---|
113 | libpng-dev \ |
---|
114 | libglw1-mesa-dev \ |
---|
115 | |
---|
116 | fi |
---|
117 | |
---|
118 | # the following package no longer works for ubuntu 20.04: |
---|
119 | # x11proto-print-dev |
---|
120 | |
---|
121 | elif [ "$WHAT" == "develop" ]; then |
---|
122 | ${SELF} echo compile ${OPENGL} |
---|
123 | echo \ |
---|
124 | valgrind \ |
---|
125 | pixmap \ |
---|
126 | exuberant-ctags \ |
---|
127 | xutils-dev \ |
---|
128 | |
---|
129 | elif [ "$WHAT" == "devdox" ]; then |
---|
130 | ${SELF} echo develop ${OPENGL} |
---|
131 | echo \ |
---|
132 | doxygen \ |
---|
133 | texlive-latex-base \ |
---|
134 | texlive-base-bin \ |
---|
135 | |
---|
136 | else |
---|
137 | echo error_unknown_target_${WHAT} |
---|
138 | fi |
---|
139 | else |
---|
140 | echo "Ubuntu for ARB installer" |
---|
141 | PACKAGES=`$SELF echo $WHAT $OPENGL` |
---|
142 | SHOWWHAT=$WHAT |
---|
143 | if [ ! -z ${OPENGL} ]; then |
---|
144 | SHOWWHAT="${WHAT}+${OPENGL}" |
---|
145 | fi |
---|
146 | echo "Packages needed for '${SHOWWHAT}': `echo $PACKAGES | wc -w`" |
---|
147 | # listwords $PACKAGES |
---|
148 | |
---|
149 | echo '-------------------- [apt start]' |
---|
150 | sudo apt-get install $PACKAGES |
---|
151 | echo '-------------------- [apt end]' |
---|
152 | fi |
---|
153 | fi |
---|
154 | |
---|