HEASoft Supported Architectures & Operating Systems
A note about using HEASoft and XMM-SAS:
When the XMM-SAS is initialized after HEASoft (when both are used
in the same session), the SAS setup changes the value of the environment
variable PGPLOT_FONT with the result that plots in e.g. Xspec
may (or may not, depending on the software distributions in
use) have no axis labels or values. Users can fix this by resetting
PGPLOT_FONT to point to the HEASoft location:
C-shell:
setenv PGPLOT_FONT $HEADAS/lib/grfont.dat
Bourne shell:
export PGPLOT_FONT=$HEADAS/lib/grfont.dat
or by simply re-initializing HEASoft:
C-shell:
source $HEADAS/headas-init.csh
Bourne shell:
. $HEADAS/headas-init.sh
This may in turn have consequences for plotting in XMM-SAS, in which
case users may need to return PGPLOT_FONT to the SAS setting when using
it for data analysis.
A note about using HEASoft and CIAO:
x86 / x86_64 PC
-
OS: LINUX
Compilers:
GNU (v3.1 or higher) or Intel compilers.
Known Issues:
-
Users who wish to get the HEAsoft pre-compiled Linux binaries should
see our
note about Perl library portability and
should be aware of
other portability issues on Linux.
-
Additional packages: The default installation of many Linux operating
systems is missing several of the standard prerequisite packages (compilers,
libncurses, and the X11 development libraries) needed for building HEASoft.
Users may need to install them using apt-get (or other package managers such
as "yum") prior to configuring HEASoft (source code distribution):
apt-get install gcc g++ gfortran
apt-get install libncurses5-dev
apt-get install xorg-dev
apt-get install perl-modules
yum install gcc
yum install gcc gcc-c++
yum install gcc gcc-gfortran
yum install ncurses-devel
yum install libXt-devel
yum install perl-ExtUtils-MakeMaker
Some users may find it necessary to symbolically link (using "ln -s") the
libncurses.so.5 library to an unnumbered version in order for the configure
test for that library to successfully link against it. For example,
cd /usr/lib/
ln -s libncurses.so.5 libncurses.so
-
(Ubuntu) Transparent windows in FV (POW display): When using POW as
your display device in the FV GUI, windows may appear transparent. KDE users
should consider switching to GNOME, and when in GNOME, visual effects should
be turned off (in System -> Preferences -> Appearance -> Visual
Effects).
-
GCC 4.0.x, 4.1.x: Some mysterious memory faults have been
attributed to the early GCC 4.x compiler series (shipped with operating
systems such as Fedora 7, 8, 9). The software seems to behave properly
when built with newer compilers (4.2.x or newer) or older compilers (3.4.x).
-
gfortran: The GNU Fortran compiler gfortran is now
supported (as of the HEASoft 6.2 release), but only in GNU compiler
distributions 4.1.1 or higher. In recent Linux distributions,
you may find that your system has gcc / g++ / gfortran 4.x as
well as gcc3 / g++3 / g77. Either set of compilers should be
sufficient, but we recommend that you avoid mixing compilers from one
set with the other, i.e. use a consistent set of compilers to build
HEASoft.
We have recently found that - when compiled with gfortran earlier than
~4.2.x - the wmodel command in the QDP plotting program fails when
no filename is specified (i.e. a default screen dump). This is evidently
a bug in early versions (4.0.x, 4.1.x) of gfortran and is corrected in
later versions (4.2.x, 4.3.x).
- X11:
Users may find it necessary to specify the location of their X11
libraries and header files to the configure script. In some newer
operating systems, X11 is no longer found in the traditional location
(/usr/X11R6/), but lives in /usr/lib and /usr/include instead:
./configure --x-libraries=/usr/lib --x-includes=/usr/include
or for 64-bit architectures:
./configure --x-libraries=/usr/X11R6/lib64 --x-includes=/usr/X11R6/include
-
gcc 3.4.3:
The gcc 3.4.3 compiler may fail to link the xspec v12 binary
because of a conflict with the linker ld v2.14. Details of the problem
are described online
HERE.
Presumably this problem will be fixed in the next release of the GNU
compilers.
-
PERL scripts under Linux RedHat 8 and 9:
Users running HEASOFT perl scripts under these platforms may encounter
"Split loop" errors. This problem is caused by a bug in the Perl
version installed by default with RedHat 8 and 9 which causes it to
not function properly with the UTF-8 locale which RedHat made the default
starting in release 8. Users should be able to get around this problem
by either:
1) Updating your Perl to v5.8.1 or higher.
or
2) Getting rid of the UTF-8 encoding in your shell environment.
The environment variables LC_ALL, LC_CTYPE and LANG may be used.
For example, on GSFC RedHat systems, we do not have LC_ALL or LC_CTYPE
set but we do have LANG=en_US.UTF-8, so we "setenv LANG en_US" to fix
the problem.
Pre-compiled binaries built on:
i686: Scientific Linux 5.1 - GNU compilers v4.1.2, perl v5.8.8
x86_64: Scientific Linux 5.2 - GNU compilers v4.1.2, perl v5.8.8
Tested at GSFC on:
i686: Scientific Linux 5.1 - GNU compilers v4.1.2, perl v5.8.8
i686: Scientific Linux 4.4 - GNU compilers v3.4.6, perl v5.8.6
x86_64: Scientific Linux 5.2 - GNU compilers v4.1.2, perl v5.8.8
OS: CYGWIN
OS Versions: 1.5.5 or higher
Compilers: GNU compilers (tested at LHEA with version 3.4.4)
Known Issues:
-
Please see the README.CYGWIN document before
attempting to build HEAsoft in the Cygwin environment.
-
Suzaku & FV/GUIs: Please note that the Suzaku and
FV/GUIs packages are not currently supported in Cygwin.
FV users should see the FV page
to download the latest FV GUI for the native Windows platform instead.
-
Anti-virus software: Some users may run into build problems as a
result of anti-virus software, manifesting as "no such file..." errors
referring to Perl scripts or conftest files, or "permission denied"
errors referring to the hd_install program. The former problem occurs
when the anti-virus program locks a new file temporarily while it scans it
at the same time the build is trying to move or remove it, and the latter
is a result of a known virus with the unfortunate name hd_install.
Unfortunately the only solution for the first problem is to turn off your
virus protection temporarily while the software builds; the second problem
may be addressed by renaming the hd_install program (please contact us at
the FTOOLS help desk for more information
about how to do this).
-
FAT32 disks: Users trying to install HEASOFT on a FAT32 disk under
Cygwin may run into various problems and should either try their build
on an NTFS disk instead, or write the
FTOOLS help desk for assistance.
-
Fork: Some users may encounter problems with forked processes when
building HEASoft under Cygwin, for example:
24 [main] sh 7280 C:\cygwin\bin\sh.exe: *** fatal error - couldn't
allocate heap, Win32 error 487, base 0x680000, top 0x6E0000,
reserve_size 389120, allocsize 393216, page_const 4096
Stack trace:
Frame Function Args
XXXXXXXX XXXXXXXX (XXXXXXXX, XXXXXXXX, XXXXXXXX, XXXXXXXX)
XXXXXXXX XXXXXXXX (XXXXXXXX, XXXXXXXX, XXXXXXXX, XXXXXXXX)
XXXXXXXX XXXXXXXX (XXXXXXXX, XXXXXXXX, XXXXXXXX, XXXXXXXX)
XXXXXXXX XXXXXXXX (XXXXXXXX, XXXXXXXX, XXXXXXXX, XXXXXXXX)
XXXXXXXX XXXXXXXX (XXXXXXXX, XXXXXXXX, XXXXXXXX, XXXXXXXX)
...
...
End of stack trace
12 [main] sh 5068 fork: child -1 - died waiting for longjmp before
initialization, retry 0, exit code 0x100, errno 11
/bin/sh: fork: retry: Resource temporarily unavailable
If you run into this problem, please contact the
FTOOLS help desk for further assistance.
Pre-compiled binaries built on:
Cygwin DLL 1.5.25 - GNU compilers v3.4.4 (cygming special), perl v5.8.7
Tested at GSFC on:
Cygwin DLL 1.5.25 - GNU compilers v3.4.4 (cygming special), perl v5.10.0
MACINTOSH
-
OS: Intel OS X / Darwin
OS Versions:
- Darwin 11.x (Mac OS X 10.7.x [Lion])
- Darwin 10.x (Mac OS X 10.6.x [Snow Leopard])
- Darwin 9.x (Mac OS X 10.5.x [Leopard])
Compilers: We recommend one of the following compiler configurations:
Known Issues:
- Perl architecture flags vs. XCode:
Some users may run into build errors in the CFITSIO Perl module
(referencing the file CFITSIO.xs) when pairing newer XCode distributions
whose compilers no longer support the PowerPC architecture (designated by
the "-arch ppc" compiler flag) with a Perl built using an older XCode
compiler:
... assembler (...) for architecture ppc not installed
Perl installations built with older XCode gcc will attempt to insert the
"-arch ppc" flag into Makefiles for the Perl modules, causing the error
above. Users may choose to either rebuild their version of Perl with
the newer XCode, or alternatively force Perl to leave out the "-arch ppc"
flag by editing
/System/Library/Perl/5.X.X/darwin-thread-multi-2level/Config_heavy.pl
to remove "-arch ppc" from the $archflags setting near the end
of the file:
$archflags = exists($ENV{ARCHFLAGS}) ? $ENV{ARCHFLAGS} : '-arch x86_64 -arch i386 -arch ppc';
After making this edit, remove the problematic Makefile and restart the
build:
rm heasoft-6.11/heacore/Astro-FITS-CFITSIO/Makefile
cd heasoft-6.11/BUILD_DIR/
make >& build.log2 &
etc.
- X11:
We recommend
XQuartz for Macs. Users should
note that currently HEASoft is (internally) forced into 32-bit mode on Mac
OS X, and therefore requires a 32-bit compatible version of X11. When
using other X11 distributions (MacPorts, etc.) users should be careful to
avoid 64-bit only installations (see note below regarding MacPorts build
architectures).
- MacPorts build architecture:
Due to ongoing problems with Perl modules in a pure 64-bit build on
Snow Leopard, we find it necessary to continue forcing the compilers
used in building HEASOFT into 32-bit mode (using either the
-arch i386 or -m32 compiler flags). Unfortunately the
MacPorts gfortran compiler v4.4.6 does not appear to successfully use
the -m32 flag, so users may find it necessary to edit the file
/opt/local/etc/macports/macports.conf
to uncomment and change the build_arch definition (~line 59) to "i386"
instead of "x86_64" prior to installing the gcc4 compiler package
in order to ensure that HEASOFT can be built in 32-bit mode.
Tested at GSFC on:
Intel Mac OS X (Darwin 10.2.0 / Snow Leopard)
- GNU gcc/g++ 4.2.1 [Apple XCode] + gfortran 4.4.1 [fink], perl 5.10.0
- GNU gcc/g++ 4.2.1 [Apple XCode] + gfortran 4.4.3 [macports], perl 5.10.0
- GNU gcc/g++ 4.2.1 [Apple XCode] + g95 4.0.3 [g95.org], perl 5.10.0
- GNU gcc/g++/gfortran 4.4.1 [fink], perl 5.10.0
- GNU gcc/g++/gfortran 4.4.3 [macports], perl 5.10.0
Intel Mac OS X (Darwin 9.8.0 / Leopard) -
- GNU gcc/g++ 4.0.1 [Apple XCode] + g95 4.0.3 [g95.org], perl 5.8.8
- GNU gcc/g++/gfortran 4.3.3 [fink], perl 5.8.8
Pre-compiled binaries built on:
Intel Mac OS X (Darwin 10.2.0 / Snow Leopard): GNU gcc/g++ 4.2.1 [Apple XCode] + g95 4.0.3 [g95.org], perl 5.10.0
Intel Mac OS X (Darwin 9.8.0 / Leopard): GNU gcc/g++ 4.0.1 [Apple XCode] + g95 4.0.3 [g95.org], perl 5.8.8
-
OS: PPC OS X / Darwin (No longer supported as of HEASoft 6.11.1 - see note below)
OS Versions:
- Darwin 9.x - Mac OS X 10.5.x [Leopard]
Compilers: We recommend one of the following compiler configurations:
- Apple XCode compilers gcc/g++ (4.0.1) plus
g95 (fink-installed or from
www.g95.org)
or
- Fink-installed GNU Compiler Collection Version 4.2
(gcc42) or 4.3 (gcc43),
consisting of gcc-4, g++-4, and gfortran.
UNSUPPORTED:
- Support for PPC Darwin has been dropped as of the HEASoft 6.11.1
release, as we are no longer able to test the software or generate pre-
compiled binaries on this platform. However, users are free to try
building HEASoft from the source code distribution on PPC Darwin as
it and its build procedures were relatively stable at the time we
discontinued support.
SUN OS / SOLARIS
-
OS Versions: SunOS 5.6 or higher
Compilers: As of HEASoft 6.4.1, the following compilers are supported:
- Sun Studio 12 C ("cc"), C++ ("CC"), f95
- Sun Workshop C ("cc"), C++ ("CC") and Fortran (f95 or f90) - Workshop 7 is preferred
- GNU compilers 4.x or newer (gcc, g++, gfortran)
UNSUPPORTED: Workshop 6.2 C++ (CC), g77
Known Issues:
-
Utilities ln and touch in /usr/ucb/bin do not behave in
the standard way (i.e. that in which HEASOFT expects them to behave),
so users are urged to put /usr/ucb/bin "downstream" of /bin in their
PATH in order to prevent build errors.
-
Builds on SunOS using non-GNU compilers now have Fortran
optimization turned off by default, due to runtime problems found when
using the SunStudio Fortran compiler (f95). Users who wish to
increase optimization for e.g. the Workshop Fortran compiler may
configure HEASOFT using the '--with-fopt=' option.
-
The Workshop 6.2 compilers are not supported, and are known to
fail in compilation of the makefilter task and generate
run-time problems in xspec v12. We recommend upgrading to the
Workshop 7 compilers.
-
The default Solaris sed (usually /usr/bin/sed) has a line-length
limitation (approximately 4000-characters) which may cause a build failure
in the fitsTcl library. The best solution is to install the
GNU sed, which has no such limitations. If you install the package
from www.sunfreeware.com, it will
put GNU sed in /usr/local. Make sure that 'make' can find the GNU sed
before it finds Sun's sed by putting /usr/local/bin before /usr/bin in
your $PATH. Alternately, you may be able to circumvent the build problem
by keeping the directory path to the HEASOFT source code tree as short
as possible.
-
The Native Solaris tar (typically /usr/bin/tar) is known to have
problems unpacking some pre-compiled binary distribution tar files
downloaded from the HEASOFT download page, due
to a fundamental incompatibility (relating to how long pathnames are
encoded) with GNU tar
(with which the tar files are created). If you do not already have
GNU tar installed
(typically /usr/local/bin/tar), we recommend installing and using it
instead (distributed freely from GNU
here).
Pre-compiled binaries built on:
Sparc / SunOS v5.9 - SunStudio12 cc/CC/f95, perl 5.8.8
Tested at GSFC on:
Sparc / SunOS v5.9 - SunStudio12 cc/CC/f95, perl 5.8.8
UNSUPPORTED:
Use of HEASOFT is no longer supported under the following:
- PPC/Linux (dropped in HEASOFT 6.5)
- Alpha/OSF (dropped in HEASOFT 6.1.2)
- SGI/IRIX (dropped in HEASOFT 6.0)
- AIX
- IRAF
- VMS
Help lines:
FTOOLS
or
xanprob@athena.gsfc.nasa.gov
Web page maintained by
Bryan K. Irby
HEASARC Home |
Observatories |
Archive |
Calibration |
Software |
Tools |
Students/Teachers/Public
Last modified: Tuesday, 07-Feb-2012 16:33:15 EST
|