How to install dependencies ============================ These instructions are for Ubuntu 20.04, but can be used as a guide for other linux-like systems. + **CMake** - https://cmake.org version >= 3.10:: $ sudo snap install cmake + **NVIDIA CUDA** - https://developer.nvidia.com/cuda-downloads. I typically download the runfile option, which you run as:: $ sudo sh cuda_11.2.2_460.32.03_linux.run but I do NOT install the drivers at this point, as I'll already have drivers. Up to you and how your system works. Also, don't ignore the step of adding something like ``export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-11.2/lib64`` to your ``~/.bashrc``, or your system won't find ``CUDA``. + **json-c** - https://github.com/json-c/json-c. This is a typical ``cmake`` installation:: $ git clone https://github.com/json-c/json-c.git $ cd json-c $ mkdir build && cd build $ cmake .. $ make -j 4 $ sudo make install When you run ``cmake ..`` you should find out what dependencies you are missing and can install them as needed. + **ERFA** - https://github.com/liberfa/erfa/releases. I think it's best to install a release version of ``ERFA``. Comes with a ``configure`` file, while the ``git`` repo doesn't. An installation route would look like:: $ wget https://github.com/liberfa/erfa/releases/download/v2.0.0/erfa-2.0.0.tar.gz $ tar -xvf erfa-2.0.0.tar.gz $ cd erfa-2.0.0 $ ./configure $ make -j 4 $ sudo make install + **HDF5** - https://www.hdfgroup.org/downloads/hdf5/ - just do:: $ sudo apt install libhdf5-serial-dev + **PAL** - https://github.com/Starlink/pal/releases - ``PAL`` is a little mental with it's default installation paths. I *HIGHLY* recommmend downloading a release version, and then using the ``--without-starlink`` option:: $ wget https://github.com/Starlink/pal/releases/download/v0.9.8/pal-0.9.8.tar.gz $ tar -xvf pal-0.9.8.tar.gz $ cd pal-0.9.8 $ ./configure --prefix=/usr/local --without-starlink $ make $ sudo make install Doing it this way installs things in normal locations, making life easier during linking. + **python >= 3.6** - the best way to run ``WODEN`` is through the script ``run_woden.py``, which has a number of package dependencies. One of these is ``pyerfa``, which uses f-strings during installation, so you have to use a python version >= 3.6. Sorry. The requirements can be found in ``WODEN/docs/sphinx/sphinx/requirements.txt``, which you can install via something like:: $ pip3 install -r requirements.txt For completeness, those packages are:: sphinx_argparse breathe astropy numpy pyerfa The first two packages are used for the documentation. Phew! That's it for now.