19 | 05 | 2021
 
 
HEASOFT and ISIS Installation Guide [Apple OS X] PDF Print E-mail
[Ubuntu] [Apple OS X] [xspec local models] [installation test I]

by M. Nowak

I have now successfully built HEASOFT 6.6.3, S-lang 2.1.4, and ISIS 1.4.9-55 on the Mac side of my Apple Powerbook running OS X 10.5.7. It's definitely a little more work. Here's the a sketch of the steps:

1) I updated my Apple Developer Xcode to 3.1.3. See:

http://mac.softpedia.com/get/Development/Compilers/Apple-Xcode.shtml

I have no idea how important this step was or wasn't.

2) My powerbook had no gfortran, and gcc version 4.0. I wanted to get a consistent set, so I downloaded gcc, g++, and gfortran 4.4 (all in the same distribution) from sourceforge.net:

http://hpc.sourceforge.net/


I believe that one cannot go above gcc 4.2 on Apple OS X 10.4.x (I could be wrong about that.) I put these binaries into /usr/local/bin.

3) Wanting to use the GNU readline, I needed to also download that. I got that from:

http://mac.softpedia.com/progDownload/GNU-Readline-Library-Download-50669.html

*however*, I needed to hack a file that the configure script reads. That hack is described at:

http://secretdiaryofhan.wordpress.com/2007/12/26/building-readline-52-on-os-x-leopard/

I believe no such hacks are required on OS X 10.4.x. (I could be wrong about that.) I built this in /usr/local/.

4) I downloaded HEASOFT 6.6.3 into /usr/local, and followed the standard build instructions. I made sure that I had set:

unix%> setenv CC /usr/local/bin/gcc
unix%> setenv CXX /usr/local/bin/g++
unix%> setenv FC /usr/local/bin/gfortran


This part I cannot emphasize enough: DO THIS BUILD IN A CLEAN WINDOW ENVIRONMENT. Make sure that there are no environment variables set from AIPS, or Fermi, or CIAO, or SCISOFT. Don't automatically start up any packages - not even HEASOFT or ISIS - upon logging into a shell. Always make it a conscious choice. There are too many chances to pick up a library compiled in some incompatible way, and that can cause problems with building or running.

5) I built S-lang following the standard instructions, but on OS X, one does not do the ldconfig step. After the configure step, you can check the config.log, and you should see that it is using /usr/local/bin/gcc.

6) I built ISIS following the standard instructions, i.e.,

unix%> cd /usr/local/isis-1.4.9-55/
unix%> setenv HEADAS /usr/local/heasoft-6.6.3/i686-apple-darwin9.7.0
unix%> ./configure --with-headas=$HEADAS --with-xspec-version=12
unix%> make
unix%> make install
unix%> make clean


The make check part has some issues, so I skipped that. However, everything runs fine.

Again, the most important part of the instructions to follow: a clean working environment, and a consistent set of compilers. We have tested against gfortran most extensively. g95 has some issues on the Mac, mostly related to mixing of static and dynamic libraries. Given that dynamic libraries are the root of many build issues on the Mac, we perfer using gfortran.