FTOOLS Frequently Asked Questions
- What is the most recent version of FTOOLS?
- How may I be notified of future releases of FTOOLS?
- How do I obtain and install the current version of FTOOLS?
- Is my platform/OS/compiler supported?
- How do I use my favorite compiler instead of gcc?
- Can I use g77?
- How much disk space is required?
- How can I turn off optimization in the build process?
- Once I've installed the FTOOLS, how do I rebuild just one of them?
- How do I call an FTOOL from a script (perl, sh, etc)?
- My ftools keep dying because I didn't remove the output file before starting. This is driving me crazy.
- How do I get on-line FTOOLS help information?
- I hate typing long FITS file names.
- Why does fparkey not like it when I give a filename as the keyword value?
- What are the known issues in the current version of FTOOLS?
- That's all very nice, but where can I ask a real question?
-
What is the most recent released version of FTOOLS?
Please refer to the HEASOFT page for information about the latest release.
-
How may I be notified of future releases of HEASOFT?
Subscribe to the "FTOOLS Notes" mailing list by sending an e-mail with empty Subject and in the body "subscribe" to ftoolsnotes-join@lists.nasa.gov -
How do I obtain and install the current version of FTOOLS?
Point your web browser at the download webpage:
http://heasarc.gsfc.nasa.gov/lheasoft/download.html
from which you can download FTOOLS (either the source or binary distributions) and will also find detailed information about installation, usage, etc.
-
Is my platform/OS/compiler supported?
We try our best to support current versions of the most popular PC Linux, Mac, and PC Cygwin operating systems. For more information, please see our installation guides:
-
How do I use my favorite compiler instead of gcc?
BEFORE typing "./configure" in your BUILD_DIR set your CC environment variable, eg, setenv CC cc
-
Can I use g77?
Currently, using g77 to build FTOOLS is ONLY supported on Linux, Mac OS X, and Cygwin systems and cannot be used on other platforms. -
How much disk space is required?
The unpackaged size of the downloaded software will vary depending on the packages you select and - if you choose a binary distribution - the architecture selected. The full source code distribution is roughly 590 Mb. Complete binary distribution sizes are approximately: Linux PC (660 Mb), Linux PC 64-bit (770 Mb), Linux Mac (580 Mb), Mac PPC Darwin (750 Mb), Mac Intel Darwin (800 Mb), Solaris (1 Gb), and Cygwin (300 Mb). Individual binary packages range in size from only a few Mb to around 200 Mb for the Xspec distributions, as the Xspec distributions include a number of large data files required to run Xspec. The APEC NEI data files (which are only needed by users running APEC NEI models) are packaged separately.
-
How can I turn off optimization in the build process?
The BUILD_DIR/configure script accepts the options --with-copt, --with-cxxopt, and --with-fopt with which you can set the optimization for each compiler (C/C++/Fortran). For example, to reduce C and C++ optimization from -O2 to -O, and turn off Fortran optimization, you would run configure --with-copt=-O --with-cxxopt=-O --with-fopt=none. -
Once I've installed the FTOOLS, how do I rebuild just one of them (to apply a patch, make my own changes, etc.)?
Note: This will only work if you already installed from the source code....
-
Perform a standard Ftools initialization.
For C-shell variants:
setenv HEADAS /path/to/my/headas-X.X/<arch> source $HEADAS/headas-init.csh
or, for Bourne-shell variants:HEADAS=/path/to/my/headas-X.X/<arch> export HEADAS . $HEADAS/headas-init.csh
where <arch> is the long architecture-specific directory containing your Ftools installation. -
Go to the directory containing the source code for the tool you wish to build, and use the hmake utility to build it, e.g.:
cd headas-X.X/heatools/dummyftool hmake
(You can capture the output to a log file if you wish.) -
If step 3 finishes without error, use hmake to install the tool:
hmake install
This will safely install the new binary.
-
-
How do I call an FTOOL from a script (perl, sh, etc)?
Specify all parameters that you don't want the user prompted for on the command line using the parameter="value" syntax. Specify *all* hidden parameters (you're only going to type it once, so don't whine). For example:
fparkey value="ROSAT" fitsfile="myfile.fits+1" keyword="MISSION" comm="What made this thing" add=yes
In the past, this FAQ mentioned a way to run FTOOLS using mode=h. While not particularly dangerous when used *interactively* by an experienced user, we no longer recommend this method; it's too easy for inexperienced users to shoot themselves in the foot.
DO NOT use mode=h, in scripts! DO NOT use 'pset' to set up an FTOOL to run! (This is the number one generator of "bugs which aren't really bugs" on ftoolshelp.) DO always specify *all* parameters on the command line in scripts.
-
My ftools keep dying because I didn't remove the output file before starting. This is driving me crazy.
Most of the FTOOLS now have a clobber parameter. Just set clobber=yes (on the command line or with pset) and your output files will be cheerfully overwritten. In a less hazardous solution, most of the FTOOLS also will clobber an output file if you precede the file name with an exclamation mark. If your favorite FTOOL doesn't obey this convention, let us know, and we'll fix it for the next release.
-
How do I get on-line FTOOLS help information?
From the command line "fhelp ftools" will list all of the FTOOLS and Perl scripts with a short description of each. More and more specific help can be requested; for example "fhelp xte" will list the FTOOLS in the XTE subpackage, and "fhelp fdump" will yield the full help page for the fdump FTOOL.
-
I hate typing long FITS file names.
So do I. Luckily, the FTOOLS parameter interface (XPI) uses the GNU readline library, so a full set of command line editing features is available (the same as you'd get in bash, for example). A few of the more useful keys:
Key Action TAB Filename completion. (Two tabs will show you a list of possible completions if there's an ambiguity). up arrow (or ^p) Recall previously entered line. down arrow (or ^n) "Undoes" up arrow. right arrow (or ^f) Move cursor right on current line. left arrow (or ^b) Move cursor left on current line. RETURN Enters the parameter you've just typed. (Your cursor does not need to be at the end of the line.) -
Why does fparkey not like it when I give a filename as the keyword value?
Due to a feature added to one of the core library routines with FTOOLS v4.1, if a string containing a forward slash ('/') is given as the keyword value (eg, in a unix path), only the characters preceding the slash will be interpreted as the keyword's value while those following it will be the comment. When entered interactively in response to fparkey's prompt, surrounding the string in single quotes prevents this parsing. When entered on the command line, however, 2 sets of quotes are required (one single and one double) because unix strips off one set before passing the string to the program. It thus looks like either this:
> fparkey Keyword value[] '/home/bubba/in.fits' Name of FITS file and [ext#][] out.fits Keyword name[] RESPFILE
or this:fparkey value="'/home/bubba/in.fits'" fitsfile=out.fits keyword=RESPFILE
The single quotes must be the innermost set of quotes on the value string. -
What are the known issues in the current version of FTOOLS?
Descriptions of known issues (and usually solutions) in the current software release can be found on the HEAsoft Known Issues page.
-
That's all very nice, but where can I ask a real question?
Contact us via the FTOOLS Help Desk