Before installing, you must have the HDF5 library installed and accessible on your system. HDF5 can be installed from your choice of package manager.
-You will also need a C/C++ compiler either gcc >=8.0 (>=9.1 recommended), or clang >= 7.0 (>= 9.0 recommended). 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.
-
+
For Mac and Windows users having trouble installing from github, check our R-universe page for instructions to install pre-built binary packages. These binary packages automatically track the latest github main branch.
+
+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 anaconda 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.
+
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
@@ -120,20 +139,34 @@ MacOS
+
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.
+
+
General Installation troubleshooting
BPCells tries to print informative error messages during compilation to help diagnose the problem. For a more verbose set of information, run Sys.setenv(BPCELLS_DEBUG_INSTALL="true") prior to remotes::install_github("bnprks/BPCells/r"). If you still can’t solve the issue with that additional information, feel free to file a Github issue, being sure to use a collapsible section for the verbose installation log.
+
+
Contributing
-
BPCells is an open source project, and we welcome quality contributions. If you are interested in contributing and have experience with C++, along with Python or R, feel free to reach out with ideas you would like to implement yourself. I’m happy to provide pointers for how to get started, my time permitting.
-
If you are unfamiliar with C++ it will be difficult for you to contribute code, but detailed bug reports with reproducible examples are still a useful way to help out. Github issues are the best forum for this.
-
If you maintain a single cell analysis package and want to use BPCells to improve your scalability, I’m happy to provide advice. We have had a couple of labs try this so far, with promising success. Email is the best way to get in touch for this (look in the DESCRIPTION file on github for contact info). Python developers welcome, though the full python package will likely not be available until after summer 2023.
+
BPCells is an open source project, and we welcome quality contributions. If you are interested in contributing and have experience with C++, along with Python or R, feel free to reach out with ideas you would like to implement yourself. We’re happy to provide pointers for how to get started, time permitting.
+
If you are unfamiliar with C++ it will be difficult for you to contribute code, but detailed bug reports with reproducible examples are still a great way to help out. Github issues are the best forum for this.
+
If you maintain a single cell analysis package and want to use BPCells to improve your scalability, we’re happy to provide advice. We have had a couple of labs try this so far, with promising success. Email is the best way to get in touch for this (look in the DESCRIPTION file on github for contact info). Python developers welcome, though the current python package is still in experimental status.