MacPorts



This is the homepage of the MacPortspackage ofthe MIRIADradio astronomy suite, which makes it easy to install and update MIRIAD onyour Mac OS X computer.

You can install MacPorts into a local directory without admin. Another way to get a current X11 installation on your system is through MacPorts. This is currently tested and supported on Tiger and newer versions of macOS. Visit MacPorts to install it on your system. Once installed, run this command from Terminal.app to.

The “MacPorts package of MIRIAD” is one of these recipes. It links to a recent snapshot of the MIRIAD source code, the other pieces of software which need to be present in order to compile MIRIAD, and so on. We update the snapshot and the recipe periodically so that MacPorts users can easily track recent MIRIAD development. The MacPorts Project Official Homepage. The MacPorts Project is an open-source community initiative to design an easy-to-use system for compiling, installing, and upgrading either command-line, X11 or Aqua based open-source software on the Mac operating system. MacPorts is a software package designed to offer support for compiling, installing, and upgrading OS X applications that have been developed for the command line, or are based on the X11 or Aqua systems. Moreover, MacPorts runs as a command line utility itself, and has been designed to facilitate the.

This is not a website about MIRIAD itself and we’re not going todiscuss what MIRIAD is or why you might want to install it. If you havequestions along those lines, see:

  1. the CARMA bugzilla (which tracks MIRIAD bugs amongst others)
  2. the homepage for the ATNF version of MIRIAD (which differs somewhat from the software we’re discussing)

The version of MIRIAD distributed through MacPorts was lastupdated on 2014 November 5.See below for information on what’s changed since thelast snapshot.

Background: MacPorts?

MacPorts is a system to ease theinstallation and management of Unix-oriented software on Apple computers.Since MIRIAD ishard to build as it is and OS X is somewhat different than most Unix-likeoperating systems, we think that installing MIRIAD through MacPorts will be anappealing choice for the many astronomers with Apple hardware.

MacPorts works by providing some general tools for managing softwareinstallations as well as a database of recipes for compiling many, many piecesof software. The “MacPorts package of MIRIAD” is one of these recipes. Itlinks to a recent snapshot of the MIRIAD source code, the other pieces ofsoftware which need to be present in order to compile MIRIAD, and so on. Weupdate the snapshot and the recipe periodically so that MacPorts users caneasily track recent MIRIAD development.

MacPorts

The key advantage to using MacPorts to compile something like MIRIAD isthat it provides a relatively controlled environment for building thesoftware. Most build problems are due to little differences between thesoftware installed on one person’s computer and another’s, so eliminatingthose differences goes a long way to eliminating build problems.

A secondary goal of the MacPorts distribution of MIRIAD is to providefrequently-updated, versioned packages of the MIRIAD source code. It’s easierto track down bugs and reproduce results when the code you’re using comes indiscrete, uniquely-named releases. The MacPorts packages of MIRIAD have uniqueversion numbers (via the inclusion of their release date in the versionnumber) so that it’s easy to specify exactly which code you’re using. Thesource code bundles distributed on this page will compile on all systems, soyou don’t have to be an OS X user to take advantage of this.

Installing MIRIAD with MacPorts

Installation can take a long time but is as straightforward as we can makeit. The steps are:

  1. Make sure you will be able to leave your computer running for several hours. The initial install does not need much attention but will take a while to compile everything. (Updates are faster.)
  2. Install the MacPorts system on your computer using these instructions. If you need help with this step, there’s a lot of information available online; see the MacPorts help links at the bottom of their installation page or the generic MacPorts support page.
  3. Open a terminal and run
    sudo port sync
    to fetch the most up-to-date data from the MacPorts server.
  4. Which telescope will you be reducing data from?
    • If you’re using CARMA, note down that your “variant string” is +carma.
    • If you’re using the Allen Telescope Array, note down that your “variant string” is +ata.
    • If you’re using the Westerbork Synthesis Radio Telescope, note down that your “variant string” is +wsrt.
    • If you’re using the Submillimeter Array, note down that your “variant string” is +sma.
    • For anything else: contact the port maintainer and ask for a “variant” to be created for your telescope. In the meantime, you can probably use an empty “variant string” and get started OK.
  5. Install the software on which MIRIAD depends. Execute the following magic command in your terminal, replacing “VARIANTS” with the “variant string” you determined above, and putting the whole command on one line:
    sudo port -u install `port info --depends miriad VARIANTS |perl -ne 'print '$1 ' while /port:([^,]+)/g'`
    For example, for an ATA user,
    sudo port -u install `port info --depends miriad +ata |perl -ne 'print '$1 ' while /port:([^,]+)/g'`
    Your computer will begin to work for a long time. (If the command fails instantly, triple–check that you entered it in correctly.) You might take this opportunity to read the MacPorts Guide for some overall documentation of the MacPorts system, how it works, and how to keep it running smoothly on your machine.
  6. Eventually, your computer should finish without printing any obvious error messages. If something seems to have failed, the problem is outside of the MIRIAD MacPort and we can’t offer you any specific advice. Consult your local system administrator or ask the port maintainer nicely.
  7. Install MIRIAD itself. In your terminal, run
    sudo port -vku install miriad VARIANTS
    replacing “VARIANTS” as before.
  8. It will take something like half an hour to compile MIRIAD. Once again, consider reading the MacPorts Guide while this is happening. Your computer should finish with a message about “Activating miriad”, some notes on setting up your shell, and no obvious error messages. If something seems to have failed, contact the port maintainer with the exact text of the output that’s worrying you.

For general help with the MacPorts system,see the MacPorts supportpage, which we hope you will find useful. That page, however, has noMIRIAD-specific information.

Updating MIRIAD with MacPorts

Once you have MIRIAD installed in this way, you can update yourinstallation with the following steps:

  1. Open a terminal.
  2. Run
    sudo port sync
  3. Run
    sudo port -vunk upgrade miriad
    If nothing happens, you already have the most recent version of MIRIAD that’s been uploaded to MacPorts.

If you get an error, you might try opening a terminal and running:

  1. sudo port selfupdate
  2. sudo port -u upgrade outdated

It is also good to run these commands once in a while even if you don’t getany errors with MIRIAD. They may, however, take a long time to run. Moreinformation on keeping your MacPorts installation running smoothly are beyondthe scope of these instructions. Once again,consult the MacPortssupport page.

The MacPort version of MIRIAD is updated approximately every few months.Updates will be released more rapidly for key bugfixes to the tasks or buildsystem — contact the port maintainer to request anupdate. The source code bundles are produced by a make distusing the autotools in a pristine checkout of the MIRIAD source code. The“last updated version” mentioned at the top of this webpage may be eitherahead of or behind what your MacPorts system says is available, depending onthe timing of updates to their site and this one.

Manuals

Note that the ATNF guides describe ATNF MIRIAD. This is notidentical to CARMA MIRIAD, but there is a substantial overlap. Allmanuals are formatted as PDFs.

Release History

Releases of MIRIAD itself are infrequent, so we name our releases with thedate they were produced as well as the MIRIAD version number. Note that youdon’t need to download the source code here to install MIRIAD withMacPorts — the MacPorts system takes care of that step for you.

miriad 4.3.8.20141105(source code)

  • This version should be buildable on OS X version 10.10 (Yosemite).
  • Changes from previous version: add support up to GCC 4.9 for compiling; add uvdump; update some ATNF tasks; buffer size increases; updates to CARMA flux calibrator and antenna position tables.
  • SHA1 sum: d5f4712e0ad816693b3de572e7fd67dd0bb08481
  • git mirror commit id: bea5050cbfb9986bd366a8a0169bf1e151b05ded

miriad 4.3.8.20140718(source code)

  • Changes from previous version: provide uvdump and uvsfit; provide new configurable MAXPNT constant; updates to ATNF tasks; support 3+1D cubes in imgen; 64-bit fixes; buffer size increases; updates to CARMA flux calibrator and antenna position tables.
  • SHA1 sum: f5983330e6a1fd9a0af2c4dfd7a4e4bb53650567
  • git mirror commit id: 3243a01c12b0a41e4f4d24c3711ee8e8a1298ff1
Macports big sur

miriad 4.3.7.20131227(source code)

  • Changes from previous version: fix a 64-bit crash in maths.
  • SHA1 sum: 39c614e3ad9e132231ccd215feea6abb054a8568
  • git mirror commit id: 2837763cdce2ddb99956b6e1a03337e13308540c

miriad 4.3.7.20131222(source code)

  • Changes from previous version: fix a 64-bit crash in imdiff; new planettb task for using ALMA planetary flux tables; new imbench benchmarking tool; increase buffer sizes in uvimage; updates to CARMA flux calibrator and antenna position tables.
  • SHA1 sum: 7c1ebc13b75096b4ce27db0108313521ec766461
  • git mirror commit id: b36acde8cb6c569501b14a8d76f0bfd1f1749b33

miriad 4.3.7.20130915(source code)

  • Changes from previous version: fix uvmodel crash on some platforms; updates to CARMA flux calibrator tables.
  • SHA1 sum: ea882fd993e808af98932e75f4990b97ea9f0669
  • git mirror commit id: c4a3bd1667c71a912f7598c35959fb52ebe118cd

miriad 4.3.7.20130827(source code)

  • Changes from previous version: provide RPFITS library and tasks atlod, fakeotf, mopfix, and wblod; provide new task psrbl; safety in gpplt with options=absent; updates to CARMA flux calibrator and antenna position tables.
  • SHA1 sum: 27b81b1831826987127d20b125938ff8712187cb
  • git mirror commit id: fd079b2fb8055125c5eb160e78e7c9eb9ad9c91f

miriad 4.3.7.20130726(source code)

Macports
  • This is the school13 release.
  • Changes from previous version: update wcslib to 4.18; improvements in coordinate handling in regrid; add option to log results of closure computation; support FITS files larger than 200 GB; new task mirmax to report hardcoded buffer sizes; various other improvements from ATNF MIRIAD; documentation improvements; updates to CARMA flux calibrator and antenna position tables.
  • SHA1 sum: 7a6e7eb291cf2ac515bd6327972db704f4c0aaf0
  • git mirror commit id: 5c22c5ca9a28ed5fd30bfe7dcf98f3fc3de9ed05

miriad 4.3.4.20130606(source code)

  • This is the school13 prerelease.
  • Changes from previous version: spaces are removed source names on FITS import; add ability to get raw values without distance scaling from clstat; source selection bugfix in uvedit; fix multiple purposes per source in listobs; documentation improvements; buffer size increases; updates to CARMA flux calibrator and antenna position tables.
  • SHA1 sum: 4e4a5b932ebd979a1b4d18a160e1a75389f9519b
  • git mirror commit id: 79a24996d64d9dd5ef0e232ce7f7c44d732278e6

miriad 4.3.4.20130224(source code)

  • Changes from previous version: 64-bit fixes, including important ones for image loading; absent option for gpplt; new edge tapering support in varmaps; several options and keywords for sinbad; date option for julian; buffer size increases; updates to CARMA flux calibrator and antenna position tables.
  • SHA1 sum: 259c62ccbf6608132a71f66f32fb1a5f44d3634c
  • git mirror commit id: 58fa97b83875a8b30b7191593006743c79ab219e

miriad 4.3.4.20120913(source code)

  • Changes from previous version: Important bugfixes and improvements touvbflag. More 64-bit and buffer-size work. Updates to pgflag.Miscellaneous bugfixes and documentation improvements.
  • SHA1 sum: db5e4035982d99a06ef7a6d59b0fa823e6a93d55
  • git mirror commit id: 3cb2e4d70b2bc4e5cb41b4f824b3bbe43a2600a9

miriad 4.3.4.20120618(source code)

  • This is the school12 release.
  • Changes from previous version: Documentation work. Removal of debug printouts.Updated leap second tables. Updated info for marstb. Import a few ATNF updates.
  • SHA1 sum: 8f5a66ce03ed421ac51591b27022f878121145ab
  • git mirror commit id: 1ec284af6129e96785574ad95d4e49489d8793e6

miriad 4.3.2.20120608(source code)

  • Changes from previous version: Lots of work aiming tosupport 64-bit Macs better. Work on support CARMA bfmask u-vvariable and proper behavior when selecting windows moregenerally. Continuing work on making the new wcslib coordinateroutines more robust and correct. Lots of bug fixes and buffer sizeincreases.
  • SHA1 sum: d09c30e630d3f18685d35a5775fbb506691b0a56
  • git mirror commit id: 032e9fcbba5788e02a730a3939871f98ca35a774

miriad 4.2.3.20120407(source code)

  • Changes from previous version: provide new xyautotask for CARMA polarization calibration; other stuff that I'm too busyto document right now.
  • SHA1 sum: d71b56f291d94621d4bbf83fac3bf9d1f36c2c99
  • git mirror commit id: 12089f29e21af87d8911f7ff36580b5bfff0c5a2

miriad 4.2.3.20120309(source code)

  • Changes from previous version: New onlineblanking task uvbflag (beta status). Additional useful outputfrom sfind. New task mafia for finding image maskregions. Better FITS interoperation for optical-velocity spectral axes(important for CASA interop). Support for some moons in planets.Stabilize data format by removing configurability of MAXIANT.Work on reducing shared library links for more portable binaries.Continued work on 64-bit support in Fortran components.Continued work on use of wcslib for coordinate operations.
  • SHA1 sum: ca68e34a53bf4dca823f80e557b908450d898134
  • git mirror commit id: 64a91b8696ec30bae29f511463acee01e4bfd3f6

miriad 4.2.3.20111010(source code)

  • Changes from previous version: Rename KAT-7 telescope fromKAT7 for compatibility with FITS files. Use per-antenna elevations inUV selection. Add options=replace to blcal. Addoptions=allants to listobs. Addoptions=on,off to sinbad. Bugfix 333 GHz referencefrequency for Mars in smaflux. Increase buffer sizes insmagpplt. Visual tweaks in closure. Addxydelay, xyphase keywords to uvcal. Addsoft keyword to varmaps. Various buffer sizeincreases and documentation improvements.
  • SHA1 sum: ee1f8639760e890b1b35a9c33d15b79d076e7c7f
  • git mirror commit id: 79544ff182f52cc22d41c41e2e37b350eafa897d

miriad 4.2.2.20110722(source code)

MacPortsMacports fortran
  • Changes from previous version: start using wcslibinternally for coordinate manipulations. Start providing most ATNFMIRIAD tasks (except ones interacting with RPFITS files), includingATNF version of mfcal and uvplt as at_mfcaland at_uvplt. Add: blflag, rmclean,varmaps, varmerge. Update manuals. Synchronize withATNF MIRIAD, possibly losing CARMA modifications: cgdisp,clean, csflag, fits, imbin,imfit, imom, imwcs, invert,linmos, mossdi, offpol, regrid,vblank, velcolor, zapchan, and subroutinglibraries. Bugfix in sfind. New options to:immedian, uvflux, uvsplit. Support-e flag in tasks. Add per-antenna filtering when selecting onelevation, dazim, and delev. Handle CARMAdelaylx and delayry variables inuvdecor. Increase buffer sizes in uvflag.
  • SHA1 sum: 1a7c4d50fa746e2112be46febab377fa2b1a7fb7
  • git mirror commit id: 0c5a43f17f6043aa6380673575722e587baac3de

miriad 4.1.7.20110426(source code)

  • Changes from previous version: incorporate wcslibsource code to prepare for using it to replace in-house coordinateroutines. Allow gpscal, mselfcal, selfcal,uvmodel, wsrtuvmodel to work on much largerdatasets. Correctness and documentation fixes in sfind. Newtasks: imstack, varmaps. Support FITS files largerthan 2 GB. Update CARMA tables. Updates to ATNF user cookbook (!).Minor updates to atlod, avmaths, bootflux,corset, cotra, csflag, gpcopy,gplist, imcmp, listobs, maxdim,moment, odnh3, pgflag, smauvspec,smavarplt, uvcal2, uvputhd,uvsort, uvspec, uvwide,velmodel. Code churn in pcsub, regrid,sinbad. Buffer size increases in miscellaneous tasks.
  • Build system updates (not relevant to MacPort users):firmly require autoconf 2.62 and automake1.11. Support --enable-silent-rules option toconfigure. Miscellaneous robustness improvements.
  • SHA1 sum: 5a0bbea5a1ace1ca141e26261fd9e1e56379c300
  • git mirror commit id:a941bb0a86e24d6a15d67c02735d6b61032cf674

miriad 4.1.3.20100706(source code)

  • Changes from previous version: merge libmir_uvio andlibmir_linpack into the main libmir library. Includeinstall/mir.test in tarball to allow simple, manual tests of theinstallation. MAXCHAN for CARMA now 8192. Distribute and install the fullsuite of files in the $MIRCAT directory. Provide a mechanism forcustom compilers to be used to build the software. Added information aboutKAT7 array to internal tables. uvflag got phase keywordfor phase-based flagging. gpbuddy got antpos keyword.Improvements to UV import in fits. Code churn in cgdisp.Many changes to blflag. Minor changes to: atcal,atlod, calboot, smauvspec.
  • SHA1 sum: 5aa26e678efbdb0c893517cf0a9d1f4d20eb66bd
  • git mirror commit id: 5479bfc001f20fcdb2f6586962ac7027f0ddd231

miriad 4.1.3.20100512(source code)

  • Changes from previous version: update version number tomatch that in VERSION file. Add more dependencies to MacPortspecification. Significant changes to fits andmfboot. Minor updates, mostly buffer size increases, toatlod, bpsel, gpaver, gpcal,listobs, marstb, prthd, smauvspec,uvcal, uvlist, uvspec, and uvwide.
  • SHA1 sum: 0d92e6e5dfdb8c65ab04e1f898b9c38c3f6c9290
  • git mirror commit id: 966cfa47bd1e444f40a44d048755c40dfc2b298f

miriad 4.1.1.20100302(source code)

  • Changes from previous version: changes to build systemfor more reliable MacPorts operation.
  • SHA1 sum: 5adcad3cb4072bcdbd4dae7770574ef6429aeea4
  • git mirror commit id: 35912e388084e7fc3cb87f5b33962072a0e49d3e

miriad 4.1.1.20100222(source code)

  • Changes from previous version: Fix writing of datasetslonger than 8 GB. Work on allowing compilation with C++compilers. Significant changes to atlod, convol,linecal, and mfcal. Added new tasks pgflagand uvrtab. Minor changes to atuvplt, bee,cgcurs, cgdisp, csflag, doc,ellint, imrm, impol, invert,itemize, mselfcal, sfind, uvfix62,uvgen, and velplot.
  • SHA1 sum: ae269af96afcdb10b95faaeeefc8d58d7bbbd840
  • git mirror commit id: c9b6a380b6261c39359937a99593e79cf6a9d02f

miriad 4.1.1.20091018(source code)

  • Changes from previous version: most importantly, a bugfix forintermittent sfind crashes.
  • SHA1 sum: 345422e25fef4f8343d7b7f2b42d5e2c33b3bd88
  • git mirror commit id: be886815af0864d83000deb90b7287db0969d252

miriad 4.1.1.20090925(source code)

  • Changes from previous version: This is the first MacPortsversion.
  • SHA1 sum: 2408ffbe11398baf22c566727f84ab58135054f0
  • git mirror commit id:3691dc0b4ee102ef585e80cd183f00749a5b60f3

Macports.org

Contact Information

For more information or troubleshooting help, contact the port maintainer,Peter Williams, at pwilliams@cfa.harvard.edu.

Advanced Topic: Choosing Compilers

The MIRIAD MacPort allows you flexibility in choosing the compiler used tocompile MIRIAD. Unless you know of a specific reason to avoid the defaultcompiler, you should use it. If you want to use a specific version of theMacPorts–distributed copies of gcc, thereare +gccXY variants in the MacPort that will build MIRIAD using GCCversion X.Y. Use the command port info miriad to get alisting of which of these variants are supported.

It is also possible to use a compiler other than the MacPorts-providedversion of GCC to compile MIRIAD. This setup is neither recommended norsupported because of the subtle bugs that very often result from nonstandardcompiler configurations. If you are not able to install MIRIAD on a Macsuccessfully without the use of the MacPort, you should probably not attemptto use a nonstandard compiler configuration. However, the use of a customcompiler can provide certain advantages:

Homebrew Vs Macports

  • Faster code if the compiler has a better optimizer than GCC.
  • A quicker first-time build of MIRIAD because the MacPort version of GCC doesn’t need to be built. Note that this is a one-time-only gain since once the GCC is built it can be reused with recompilation.

Macports Vs Homebrew

You can choose which compiler will be used to build MIRIAD by installingthe gcc_select MacPort, specifying a compiler withthe gcc_select command, and building the MIRIAD MacPort whilespecifying the +gcc_select variant.

To build MIRIAD with a custom compiler, then, you need to define yourcompiler’s setup in the gcc_select system and then select it. This isdone by creating a file in /opt/local/etc/select/gcc named somethinglike custom of the form:

Macports Migration

Each line in the file specifies the path to a standard compiler executable.Most notably, the last line specifies the Fortran compiler to use. (The twolines with dashes point to the Java compiler and the code coverage tool,typically gcj and gcov. These are not used when compiling MIRIAD.) If youmix and match executables from different compiler versions, your build willalmost assuredly fail. Then, “select” your new compiler by running acommand such as

Macports M1

gcc_select custom

This support should be sufficient for you to attempt building the MIRIADMacPort with any compiler you want, but be prepared for a lot of frustrationand wasted time unless you know exactly what you’re doing.