lagrangian-filtering icon indicating copy to clipboard operation
lagrangian-filtering copied to clipboard

macOS Support

Open angus-g opened this issue 3 years ago • 4 comments

At the moment, we rely on a few binary-distributed packages (e.g. sosfilt), but these haven't been built for macOS. This means that the install instructions don't immediately translate to these platforms.

I'll need to come up with modified install instructions, and/or add binary distributions for non-Linux platforms.

  • [x] Create macOS-specific packages for lagrangian-filtering and parcels
  • [x] Update parcels to respect LDFLAGS in environment to support conda on macOS (https://github.com/angus-g/parcels/commit/228ab3ab696cf2427109b87a448265e02dcbae74)
  • [x] Fix symbol not found on import filtering: _H5Pget_fapl_ros3 in h5py
  • [ ] Amend parcels dependencies on macOS to explicitly require openmp

I didn't amend the package dependencies, but there are pre-built environments available now:

  • conda env create angus-g/filtering37-omp
  • conda env create angus-g/filtering38-omp
  • conda env create angus-g/filtering39-omp
  • [ ] Add environment/macOS install instructions to easily-viewable README
  • [ ] Tag current beta as stable; there don't seem to have been any major issues with it in testing

angus-g avatar Sep 30 '21 22:09 angus-g

Hi - I'm really looking forward to trying this package, it looks great! I'm on macOS 11.3.1, and (predictably) had some trouble installing the package before finding this issue - perhaps it could be noted in the README and docs? I had a go with the pre-built environments you mention above, but got stuck at the filtering step when trying the analytic_example notebook with 'fatal error: 'omp.h' file not found', and had no success solving it. Let me know if you'd like further info about this error, it could be a problem my end.

loisbaker avatar Nov 05 '21 15:11 loisbaker

Thanks for giving it a go @loisbaker! I have temporarily lost access to a macOS system, but I'll get one again pretty soon. In the meantime, do you mind giving a little bit more detail about the steps you took to try the pre-built environment?

angus-g avatar Nov 10 '21 08:11 angus-g

Thanks @angus-g. I just installed miniconda, created the environment using 'conda env create angus-g/filtering39-omp' as above, then ran the notebook analytic_example.ipynb with the relevant kernel. It all works fine until the filtering step, when it fails to compile. I've attached the error message below, and I have gcc 11.2.0_1 and libomp 13.0.0 installed. compilation_error_macOS.txt

loisbaker avatar Nov 10 '21 21:11 loisbaker

Just to update on this: I've now got access to some macOS machines, so I'll be able take a look at how to make this more robust!

angus-g avatar Nov 21 '21 21:11 angus-g