Welcome to iraf.net Friday, February 23 2018 @ 06:25 AM GMT
Mac/Intel IRAF Port - Beta Available
- Tuesday, March 14 2006 @ 05:50 AM GMT
- Contributed by: fitz
- Views: 4,413
A beta-release of the Mac/Intel port is now available for user testing. Features are still planned and the final packaging has yet to be done, but this is a fully functional release of IRAF, X11IRAF, various external packages and DS9, all with native Intel binaries.
Please report any problems, bugs, or suggestions to the forum thread started on this topic. The beta may be updated occassionally if serious bugs are found or major new features added, and all users should update to the final release once it is ready. Detailed, if quick, release notes are in the body of the message. For the impatient, here is a link to the distribution directory.
Update: (3/14/06) PPC binaries and common x86/ppc source updated in distribution.
Update: (3/29/06) STSDAS/TABLES V3.5 x86 binaries added to distribution.
Update: (4/03/06) RedHat binaries of port added to distribution (see comments).
************************************** **** IRAFNET Version 2.13 Release **** ************************************** ------------------------------------------------------------------------------- Update Log: Mar 13 2006 - V2.13-BETA, Initial beta-release of Mac/Intel Port distro ------------------------------------------------------------------------------- Contents of this directory: README This file V2.13-BETA/ IRAF V2.13-BETA Release directory as.pcix.gen.gz All-Source distribution ib.macx.x86.gz Core IRAF binaries (macintel) nb.macx.x86.gz NOAO Package binaries (macintel) pciraf.ps.gz Installation Guide unixsmg.ps.gz Site Manager's Guide ds9/ DS9 Distribution directory extern/ Various IRAF External packages (src and binaries) x11iraf/ X11IRAF V1.3.2 MacIntel binary distributions bugs.log (Current) IRAF BugLog file help.log (Current) IRAF HelpLog file sysnotes.v213 V2.13 system revisons notes ** Not Yet Available ** v213revs.txt V2.13 revisions summary ** Not Yet Available ** =============================================================================== IRAF V2.13-BETA Distribution Release Notes =============================================================================== Known Issues and Planned Features: ================================== This is a *beta release* and small problems are expected. Please report any bugs or comments to the iraf.net forums or email me directly at email@example.com. Not all planned features of the final release and included in the beta system, however it should be fully functional. The list of known work includes at least: - back-port of this system to PPC - method to allow cross-compilation of IRAF tasks, e.g. to build i386 binaries on a ppc system with a simple XC flag. - improved tab-completion handling for ECL - enhanced default XGterm GUI - Updated X11IRAF (i.e. full macintel compile) - Simplified installation procedures (.pkg installers?) Sugegstions for other features can be considered, all bug fixes will be attempted provided they are easily reproducible. IRAF V2.13 Installation ======================= The beta distribution file may be found at http://iraf.net/ftp/iraf/V2.13-BETA New installation procedures are planned but for the moment we'll stick the the standard AS/IB/NB format. Detailed installation instructions may be found in the 'pciraf.ps.gz' installation guide in the distribution directory, simply use the architecture name 'macintel'. The creation of an 'iraf' user is somewhat optional, so long as you define the "proper environment" in your own .cshrc files. Since most MacIntel systems are single-user systems anyway, installing as yourself is permitted but remember that the final 'install' script must be run as root or with the 'sudo' command. As a convenience we'll refer to the base of the iraf directory tree simply as '/iraf' but it can be anywhere, the install script will create a /iraf link when it is run. We'll assume you've already downloaded the distribution files and have a directory in mind for IRAF. To summarize the installation process: % cd /iraf # go to iraf tree directory % mkdir iraf # create needed directories % mkdir irafbin % mkdir irafbin/bin.macintel % mkdir irafbin/noao.bin.macintel % cd /iraf/iraf # go to "iraf root" directory % tar zxpf //as.pcix.gen.gz # unpack AS distribution file % cd /iraf/irafbin/bin.macintel # go to core iraf bin directory % tar zxpf //ib.macx.x86.gz # unpack IB distribution file % cd /iraf/irafbin/noao.bin.macintel # go to core iraf bin directory % tar zxpf //nb.macx.x86.gz # unpack IB distribution file % setenv iraf /iraf/iraf/ # trailing '/' required! % cd $iraf/unix/hlib # go to hlib$ directory % sudo ./install # run the install script IRAF should now be installed. Use 'mkiraf' to create a 'login.cl' file and 'uparm' directory and 'cl' to login. Note that an XTerm/XGterm window is required for graphics. External Packages ================= A number of external packages have been built and are available from http://iraf.net/ftp/iraf/extern To install any one of these packages you'll need to download at least the '-src.tar.gz' source archive (which contains an updated toplevel mkpkg file that allows you to configure a 'macintel' architecture), or additionally the binary distribution. Package Installation: All installation instructions assume '/iraf/extern' as the path where you will be installing packages. In the following example we will install the TABLES package. Packages not maintained on iraf.net are still available from their original site or the iraf.noao.edu extern/contrib directories. We assume you have write permission on the iraf files, and if building sources, have the proper environment defined (see below). 1) Define the external package A package is declared in the hlib$extern.pkg (i.e. 'hlib$' is the iraf notation for the $iraf/unix/hlib directory) file by defining an environment variable containing the pathname and a 'task' declaration. For our TABLES example package this requires you to add something like the following: reset tables = /iraf/extern/tables/ task tables.pkg = tables$tables.cl Near the end of the hlib$extern.pkg file, update the definition of helpdb so it includes the package help database, copying the syntax already used in the string. Add this line before the line containing a closing quote: ,tables$lib/helpdb.mip Note the pathnames *must* contain a trailing '/', also be sure the helpdb string is modified before the closing quote. The distributed system has this package defined, so simply uncomment and edit the strings as needed. 2) Create the package directory % cd /iraf/extern # go to extpkg directory % mkdir tables # create the directory % cd tables # go to TABLES directory 3) Download the package distribution: Using anonymous ftp can be done as follows: % ftp ftp.iraf.net ....login as 'firstname.lastname@example.org' ....give email as passwd ftp> cd iraf/extern # go to extern pkg directory ftp> bin # Turn on binary mode ftp> mget tables* # get all TABLES files ftp> quit Note the login includes the domain name and is required! Alternatively, files may be downloaded in your web browser at http://iraf.net/ftp/iraf/extern 4) Unpack/Build the package: Unpack the source file: % tar zxvf //tables-src.tar.gz o To Install Pre-Built Binaries, simply unpack binary distribution: % tar zxvf //tables-bin.macintel.tar.gz This will create the 'bin.macintel' directory containing all the package binaries. o To Build from Source: Packages may be built using the source from iraf.net, however source archives from other sources won't have the architecture definition needed in these instructions. % setenv tables $cwd/ # define package directory % mkpkg -p macintel # reset architecture % mkpkg -p # build package Note that some packages may require additional '-p' environment flags. Building from within the CL is possible only *after* the package has been defined in hlib$extern.pkg. Using the pre-built binaries is recommended. 4) The "proper iraf environment" for building sources: If you didn't create an 'iraf' user account and plan to build sources you'll need to add something like the following to your .cshrc file: setenv iraf /iraf/iraf/ # trailing '/' required setenv IRAFARCH macintel # or 'macosx' for PPC systems source $iraf/unix/hlib/irafuser.csh # additional definitions. Edit the paths as needed for your system. X11IRAF ======= Pre-built binaries for the X11IRAF tools can be found at http://iraf.net/ftp/iraf/x11iraf There are still a number of issues to be resolved in porting the X11IRAF tasks completely to MacIntel (specifically with XGterm) but rather than allow these to delay the release any longer we will deal with them separately later and update the distribution when ready. As such, the distribution contains a PPC XGterm binary which appears to work properly, all other binaries are native i386. To install the tools, download the binary distribution from the above archive and unpack in a new directory (e.g. /iraf/x11iraf). This is simply a binary distribution of the needed files. The simplest way to move them to the proper system directories is using the supplied 'install' script as % sudo ./install Note the 'sudo' is required because by default these will be installed to public directories like /usr/local/bin and system /usr/X11R6 directories. Accept all the defaults paths supplied or modify the paths to suit your needs. DS9 and MacIntel Build Procedures ================================= Pre-built binaries for DS9 and the associated XPA tasks may be found at http://iraf.net/ftp/iraf/ds9 Building from the latest DS9 sources is also possible with a trivial change. We used the latest (as of this port) DS9 V4.0b8 release with the source obtained from the SAO archive at ftp://sao-ftp.harvard.edu/pub/rd/ds9. These build pretty easily except for a small problem with the architecture flags being set incorrectly by some of the configure scripts. To fix this (and for future releases of the source), simply 'cd' to the source directory once unpacked and execute the following commands: % cd saods9 % foreach i (`find . -name configure -print`) ? cat $i | sed -e 's/-arch ppc//g' > _z ; mv _z $i ; chmod 755 $i ? end % ln -s make.darwin make.include % make This effectively removes the '-arch ppc' flags from the configure files (mostly in the Tcl/Tk trees) and allows the natural i386 objects to be built. Binaries will be in the 'bin' subdirectory when complete. ================================== Acknowledgements ================================== This port would not have been possible without the kind support of Dr. Steve Grandi at NOAO and the access he allowed to his machine. Thanks Steve!