1. See All Results For This Question
  2. Mac Astronomy Software — MAC OBSERVATORY
  3. Astro Gold (free Version) Download For Mac OS X
  4. Astro Bros Mac Os Update

The MESA SDK is a collection of compilers and run-time libraries that make it easy to install and use the MESA stellar evolution code.

  1. Linux (Intel)
  2. Mac OS (Intel)

Overview

AstroPlanner is a well regarded astronomy session planning app for the Mac. Mac OS X Installation via Homebrew (recommended method since 0.9.5) An official installer for Mac exists, see the download page. This is the way to install siril from source, to test the latest development version for example. Removing Siril from macport if exists.

Experience has demonstrated that incompatibilities and bugs in compilers and libraries are significant obstacles in getting MESA up and running with minimal fuss. For instance, MESA makes use of various features in the new(ish) Fortran 2003 standard, which aren't implemented (or are still buggy) in all but the most recent compiler releases.

  1. Super Mario Bros X Mac free download - South Park Super Mario Bros, Mario Forever, Apple Mac OS X Mavericks, and many more programs.
  2. Finding a comfortable, durable, & best-reviewed PC & Mac gaming headset is much with ASTRO Gaming. Shop today for free shipping on orders over ₤39! Blades Halo Championship Series Finn & Jake Susan Strong Adventures Scope The Legend of Zelda ™ Super Mario Bros. ™ Super Marios Bros.™ 3 ASTRO Arc Logo Astro A Star Mixamp ASTRO.

To help overcome these obstacles, I've put together a unified software development kit (SDK) which contains compilers and libraries known to compile MESA correctly. The SDK contains the following components:

  • The GNU Comipler Collection (gcc), with support for C, C++, and Fortran
  • The GNU Project Debugger (gdb)
  • The Valgrind code instrumentation framework
  • The Basic Linear Algebra Subprogram (BLAS) library
  • The Linear Algebra PACKage (LAPACK) library
  • The Hierarchical Data Format v5 (HDF5) library
  • The PGPLOT graphics library
  • The SE library from the NuGrid project
  • The ffmpeg movie encoder
  • The ndiff fuzzy comparison tool
  • Various helper scripts for use in linking against these libraries and other tasks

Currently, both Linux and Mac OS running on Intel/AMD processors are supported. Although the SDK was initially bundled as part of the standard MESA distribution (from release 3708 onwards), it makes more sense to keep it separate. This page hosts all the necessary information and links to download, install and use the SDK.

Linux (Intel)

Compatibility

The SDK should work on any relatively-recent Linux distribution running on 64-bit Intel-compatible processors (32-bit processors are no longer supported; in any case, MESA itself doesn't work on 32-bit). The GNU C library (also known as GLIBC) included in the distribution must be version 2.5 or more recent; to determine what GLIBC your system uses, run the command /lib/libc.so.6 (or, possibly, /lib64/libc.so.6) and examine the first line of the output for the version number.

Prerequisites

The following components must be installed for the SDK to work on Linux-based systems:

  • The 'Binutils' development tools
  • The 'Make' dependency/compilation tool
  • The 'Perl' scripting language
  • The 'X11' windowing library plus development headers
  • The 'Z' compression library plus development headers
  • The 'C' shell or derivatives

Not all of these components are installed by default on some Linux distributions, and you may have to use the appropriate package management tool (e.g., apt-get, yum, rpm, emerge) to install them. The following table lists the package names of the components (and any other pieces that are required) for some of the more-common distributions:

PackageFedora / CentOSUbuntuMintGentooArch
Binutilsbinutilsbinutilsbinutilssys-devel/binutilsbinutils
Makemakemakemakesys-devel/makemake
Perlperlperlperldev-lang/perlperl
X11 librarylibX11, libX11-devellibx11-6, libx11-devlibx11-devx11-libs/libX11libx11
Z libraryzlib, zlib-develzlib1g, zlib1g-devzlib-devsys-libs/zlibzlib
C shelltcshtcshtcshsys-shells/tcshtcsh
Otherlibc6-devglibc

If your distribution is not listed here, please contact me and I'll add it to the table.

Astro Bros Mac OS

Download

To download the SDK for Linux, click on the appropriate link in the table:

Release Date
MESA Version at Release
FileNotes
April 7 2021 (current)
15140
mesasdk-x86_64-linux-21.4.1.tar.gzAdded fypp preprocessor; enabled float128 support in mpfr
December 18 2020
15140
mesasdk-x86_64-linux-20.12.1.tar.gzUpdated gcc to 10.2
March 25 2020
12778
mesasdk-x86_64-linux-20.3.2.tar.gzAdded ODEPACK library
March 1 2020
12778
mesasdk-x86_64-linux-20.3.1.tar.gzAdded math slots functionality

Note that versions of the SDK older than the current one are not formally supported but are provided here as a courtesy; if you run into problems using an older version, you should first try upgrading to the current version.

Installation

On Linux the SDK can be installed anywhere (this is different from previous releases, where it had to be put in the /opt directory). However, for simplicity the following instructions will assume you're installing in your home directory. The steps are as follows:

  • Download the package from the table above
  • Extract it using the command tar xvfz package_name -C ~/ (note that's a tilde in front of the slash!)
  • Set the path to the SDK:
    • For the C shell: setenv MESASDK_ROOT ~/mesasdk
    • For the Bourne shell: export MESASDK_ROOT=~/mesasdk
  • Initialize the SDK (also checks compatibility):
    • For the C shell: source $MESASDK_ROOT/bin/mesasdk_init.csh
    • For the Bourne shell: source $MESASDK_ROOT/bin/mesasdk_init.sh
  • Check that the SDK is properly installed by running gfortran --version. The first line of the output should look something like this:
    GNU Fortran (GCC) 9.2.0
    If it doesn't, then you should consult the Troubleshooting section below.

Steps 3 and 4 need to be repeated each time you begin a new shell session; alternatively, they can be added to the appropriate shell start-up file (~/.cshrc for the C shell, and ~/.profile for the Bourne shell).

Usage

Nothing special needs to be done in order to use the SDK to build MESA. Simply change into the top-level mesa directory (the one created when you download and unpack MESA) and then run ./install.

Mac OS (Intel)

Astro Bros Mac OS

Compatibility

The SDK should work on any relatively-recent OS X distribution (10.10, Yosemite or later) running on Apple computers with 64-bit Intel-compatible processors (32-bit processors are no longer supported; in any case, MESA itself doesn't work on 32-bit).

Prerequisites

The following components must already be installed before the SDK can be installed on Mac OS systems:

  • The Xcode command-line tools
  • The XQuartz X-windows infrastructure

The Xcode command-line tools can be installed by running xcode-select --install from a Terminal prompt. (Note that a full installation of the Xcode development environment is not necessary). Likewise, XQuartz can downloaded and installed from here. Note that it is often necessary to reinstall the command-line tools and/or XQuartz after upgrading to a new release of OS X.

Download

To download the SDK for Mac OS, click on the appropriate link in the table:

Release Date
MESA Version at Release
FileNotes
April 7 2021 (current)
15140
mesasdk-x86_64-macos-21.4.1.pkgAdded fypp preprocessor; enabled float128 support in mpfr
February 4 2021
15140
mesasdk-x86_64-macos-21.2.1.pkgAdded support for MacOS 11.2 (Big Sur)
December 18 2020
15140
mesasdk-x86_64-macos-20.12.2.pkgUpdated to gcc 10.2
December 16 2020
15140
mesasdk-x86_64-macos-20.12.1.pkgAdded support for MacOS 11.1 (Big Sur)
November 19 2020
12778
mesasdk-x86_64-macos-20.11.1.pkgAdded support for MacOS 11.0 (Big Sur)
September 28 2020
12778
mesasdk-x86_64-macos-20.9.1.pkgFixed 'library not found for -lSystem' issue, arising on fresh Xcode 12 deployments
April 7 2020
12778
mesasdk-x86_64-macos-20.4.1.pkgAdded md5sum and other checksum utilities from coreutils

Note that versions of the SDK older than the current one are not formally supported but are provided here as a courtesy; if you run into problems using an older version, you should first try upgrading to the current version.

Installation

On Mac OS the SDK is installed into the Applications folder; you will likely need Administrator privileges to do this.

  • Download the installer from the table above
  • Open it by double clicking on it in the Finder
  • Follow the on-screen prompts until the installation completes
  • Set the path to the SDK:
    • For the C shell: setenv MESASDK_ROOT /Applications/mesasdk
    • For the Bourne shell: export MESASDK_ROOT=/Applications/mesasdk
  • Initialize the SDK (also checks compatibility):
    • For the C shell: source $MESASDK_ROOT/bin/mesasdk_init.csh
    • For the Bourne shell: source $MESASDK_ROOT/bin/mesasdk_init.sh
  • Check that the SDK is properly installed by running gfortran --version. The first line of the output should look something like this:
    GNU Fortran (GCC) 10.2.0
    If it doesn't, then you should consult the Troubleshooting section below.

Steps 4 and 5 need to be repeated each time you begin a new shell session; alternatively, they can be added to the appropriate shell start-up file (~/.cshrc for the C shell, and ~/.bash_profile for the Bourne shell).

Usage

See the usage instructions above for Linux (they are the same for Mac OS).

Math Slots

It's often convenient to have different versions of the same math libraries available through a single SDK installation — for instance, one optimized for speed, one for accuracy, and so on. To this end, recent releases (>= 20.3.1) of the SDK support a feature known as 'math slots'. By setting the MESASDK_MATH_SLOT environment variable, you can chose which set of math liberaries ('slot') gets used at compile time. Possible choices are as follows:

MESASDK_MATH_SLOT choiceDescription
defaultDefault (no special optimizations or modifications)
crmathCorrectly-rounded math, via the crlibm library

If MESASDK_MATH_SLOT is not set, then the default slot is used. Note that when compiling MESA it isn't necessary to set MESASDK_MATH_SLOT yourself; the build scripts take care of it.

Making Movies

The SDK includes the ffmpeg encoder and a simple script, images_to_movie, which uses ffmpeg to create movies from PNG files produced by MESA.

To illustrate the script in action, suppose the &pgstar section of the MESA inlist file contains the following parameters:

⋮ Grid6_file_flag = .true. Grid6_file_dir = 'png' Grid6_file_prefix = 'grid6_' ⋮

This will make MESA write a sequence of PNG images into the png subdirectory, with filenames grid6_NNNNN.png (where N represents a single digit). To combine these files together into a movie, run the following command from the same directory MESA was run in:

This will produce an MPEG4 movie, with the filename movie.mp4. The type of movie produced is determined from the file extension. Other choices are possible (e.g., mpg for MPEG2), but the images_to_movie.sh script is specifically targeted at producing MPEG4 output, so it might be best to stick with the mp4 extension unless you know what you're doing.

IMPORTANT NOTE: In the example above, the quotes (' ') are necessary to prevent the shell from prematurely expanding the wildcard (*) character.

Installing as Root User

If you wish to install the SDK as the root user, that's fine — but you must run the initialization script at least once as root, before you can use the SDK as an ordinary user. This is because configuration files are written into the $MESASDK_ROOT/etc directory on first initialization; and these files must be written as root if you installed as root.

Troubleshooting

If you encounter an error during the build process, please consult the FAQ first. If your problem is not resolved, then you should submit a bug report to the MESA Forum. Be sure to include the following information in your bug report:

  • The version of MESA you are trying to build
  • The version of the SDK you are using (use the mesasdk_version.sh command to determine this)
  • Your platform (machine type, operating system, version)

Also, it would be helpful if you could post the output of the following commands:

  • uname -a
  • gfortran -v
  • echo $MESASDK_ROOT
  • echo $PATH

Frequently Asked Questions (FAQ)

Q: When trying to download the SDK using wget, I get the error

403: Forbidden

A: Our web server is set up to reject requests from wget. As a workaround, add the flag --user-agent=' to your wget invocation.

Q: How can I download the SDK from the command line?

A: Use the wget tool. For instance, to download the Linux version dated YYYYMMDD, run

wget --user-agent=' http://www.astro.wisc.edu/~townsend/resource/download/mesasdk/mesasdk-x86_64-linux-YYYYMMDD.tar.gz

(See the question above for a discussion of why the --user-agent=' flag is necessary.)

Q: The initialization script produces errors of the sort

See All Results For This Question

mesasdk_init.sh: checking architecture touch: cannot touch '/opt/mesasdk/etc/check_arch.done': Permission denied

A: This is occurring because you installed the SDK as a different user (e.g., root). You must run the initialization script at least once as the installation user, before running as any other user.

Q: When compiling, I'm encountering the error

Mac Astronomy Software — MAC OBSERVATORY

file locking disabled on this file system (use HDF5_USE_FILE_LOCKING environment variable to override)

A: To fix this, set the HDF5_USE_FILE_LOCKING environment variable to FALSE. This can be done via the command

Q: When compiling MESA on MacOS, I'm encountering the error

Astro Gold (free Version) Download For Mac OS X

CC ../private/utils_c_system.c In file included from /Applications/mesasdk/bin/../sysroot/usr/include/sys/wait.h:110, from /Applications/mesasdk/bin/../sysroot/usr/include/stdlib.h:66, from ../private/utils_c_system.c:26: /Applications/mesasdk/bin/../sysroot/usr/include/sys/resource.h: In function 'getiopolicy_np': /Applications/mesasdk/bin/../sysroot/usr/include/sys/resource.h:447:34: error: expected declaration specifiers before '__OSX_AVAILABLE_STARTING' 447 int getiopolicy_np(int, int) __OSX_AVAILABLE_STARTING(__MAC_10_5, __IPHONE_2_0);

A: To fix this, uninstall and then re-install the Xcode command line tools via the commands

Astro Bros Mac Os Update

sudo rm -rf /Library/Developer/CommandLineTools xcode-select --install

Then, re-install the SDK.