Click here for operating system specific installation information for github-based installs
### Linux
Obtaining the HDF5 dependency is usually pretty straightforward on Linux
- apt: `sudo apt-get install libhdf5-dev`
- yum: `sudo yum install hdf5-devel`
- conda: `conda install -c conda-forge hdf5`
- Note: Linux users should prefer their distro's package manager (e.g. `apt` or `yum`) when possible,
as it appears to give a slightly more reliable installation experience.
### Windows
Compiling R packages from source on Windows requires installing [R tools for Windows](https://cran.r-project.org/bin/windows/Rtools/). See [Issue #9](https://github.com/bnprks/BPCells/issues/9) for more discussion.
### MacOS
For MacOS, installing HDF5 through homebrew seems to be most reliable: `brew install hdf5`.
**Mac-specific troubleshooting**:
- **Macs with ARM CPUs**: a common error is to have an ARM-based HDF5 install but an x86-based
R install. This will cause errors when BPCells tries to access HDF5 during installation.
- Check your R installation
by running `sessionInfo()`, and seeing if it lists ARM or x86 under "Platform".
- The easiest option is to use
ARM R because homebrew will default to an ARM hdf5 installation
- It is [possible](https://codetinkering.com/switch-homebrew-arm-x86/) (though tricky) to install an x86 copy of homebrew in order to access an x86 version of hdf5
- **Older Macs (10.14 Mojave or older)**: The default compiler on old Macs does not support needed
C++17 filesystem features. See [issue #3](https://github.com/bnprks/BPCells/issues/3#issuecomment-1375238635) for
tips getting a newer compiler set up via homebrew.
### Supported compilers
In most cases, you will already have an appropriate compiler. BPCells recommends
gcc >=9.1, or clang >= 9.0.
This corresponds to versions from late-2018 and newer.
Older versions may work in some cases so long as they
have basic C++17 support, but they are not officially supported.