-
Notifications
You must be signed in to change notification settings - Fork 15
/
README.trouble
136 lines (89 loc) · 3.96 KB
/
README.trouble
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
TROUBLESHOOTING
In a perfect world, Unix would be Unix, and compilers
(and our codes!) would not have bugs. However ....
1. THE INSTALLATION FAILS
-------------------------
The first stage of the installation generates makefiles and execution
scripts appropriate for the system you have described. All of the
systems supported are described in files in the $GALAHAD/arch
directory. Each file is named
compiler.machine.os.comp
where machine is the machine you asked for
os is the operating system, and
comp is the requested compiler
(some of these may be "all", if they apply to more than one case!). If
you have problems, you should check the contents of the file appropriate
to your system. You might try downgrading the level of optimization if
appropriate, uninstalling (using the uninstall_galahad script)
and installing again.
2. THE COMPILATION FAILS
------------------------
Check (and edit if necessary) the generated makefile header in the file in
$GALAHAD/makefiles
that corresponds to the system you installed.
3. THE RUN FAILS
----------------
Check (and edit if necessary) the generated script header in the file in
$GALAHAD/bin/sys
that corresponds to the system you installed.
If you encounter the message
/bin/sh: 1: Syntax error: Bad fd number
when trying to run a GALAHAD script, this is likely beacuse the standard
Bourne-shell /bin/sh is symbolicaly linked to the rather poor /bin/dash
implementation on some Linux systems. This can be avoided by
(a) issuing the commands
sudo mv /bin/sh /bin/sh.orig
sudo ln -s /bin/bash /bin/sh
to make the much better bash implementation the default, or
(b) executing the command
dpkg-reconfigure dash
and say "no" to making dash (rather than bash) the default.
4. KNOWN PROBLEMS WITH SPECIFIC SYSTEMS
---------------------------------------
4.3 ifort under LINUX
---------------------
There may be unfortunate clashes between ifort/icc and the c++ libraries
from GNU. If you see a linking or run message along the lines of
libgalahad_spral.a(NumericSubtree.o):
In function `spral_ssids_cpu_subtree_solve_fwd_dbl':
NumericSubtree.cxx:(.text+0xa8c): undefined reference to
`__cxa_throw_bad_array_new_length'
you will need to use libstdc++ from a version of GCC at least
as recent as version 4.9. TO do so, edit the .ifr files in
$GALAHAD/makfiles and $GALAHAD/bin/sys so that the SPRAL variable becomes
-L/usr/lib/gcc/x86_64-linux-gnu/xxx -lgalahad_spral -lstdc++ -lhwloc
where xxx is 4.9 or later (check /usr/lib/gcc/x86_64-linux-gnu to
see what xxx should be).
4.2. f90/f95 under SOLARIS
--------------------------
Optimization has been disabled since any attempt at
optimization here leads to internal compiler errors here.
Please grumble to Sun!
4.3 ifc under LINUX
-------------------
4.3.1 Pre Version 7
If you are using a pre Version 7 version of the Intel fortran compiler (ifc),
the line
set MODCMD = '-module $MOD -I$MOD -Vaxlib'
in ./arch/compilers.pc.lnx.ifc should be replaced by
set MODCMD = '-cl,$MOD/work.pcl -Vaxlib'
and lines 383-393 in ./install_galahad should be uncommented.
In addition, you may need to turn off optimization if you are
compiling the modules presolve.f90 and (the optional) ad02.f90
4.3.2 Version 7.1
N.B. The 7.1 version of the compiler has a bug, and will not
compile useqpb.f90. Intel have been informed, and we
await a suitable patch. Fortunately the 8.0 version works fine,
so we suggest users ensure that they are using ifc_8 (ifort)
4.4 frt under LINUX
-------------------
Unfortunately the glibc2.1 libraries required by frt are
incompatible with those used by most modern C compilers,
so we are unable to offer the GALAHAD-AMPL interface in this
case. If you know of a fix, we would love to know ...
5. BUG REPORTS
--------------
If you think you have found a bug (even better, if you have
found and fixed one!), please let us know. We will make
every effort to issue bug fixes (although, this depends on our
having time, so no guarantees).