Skip to content

Commit

Permalink
Merge pull request #1703 from dean-krueger/update-dep-versions
Browse files Browse the repository at this point in the history
Updated cyclus dependencies listed in the README
  • Loading branch information
gonuke committed Mar 28, 2024
2 parents 31c9789 + 30d781f commit 2eab074
Show file tree
Hide file tree
Showing 4 changed files with 38 additions and 87 deletions.
1 change: 1 addition & 0 deletions CHANGELOG.rst
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@ Since last release
* Changed README.rst installation instructions, tested on fresh Ubuntu-22.04 system with Python 3.11 (#1617, #1644)
* Resolved various compilation warnings due to use of deprecated APIs (#1671)
* Update version management in CMake build (#1696)
* Changed dependency versions in README.rst, INSTALL.rst, and DEPENDENCIES.rst (#1703)

**Removed:**

Expand Down
68 changes: 24 additions & 44 deletions DEPENDENCIES.rst
Original file line number Diff line number Diff line change
Expand Up @@ -25,27 +25,20 @@ dependencies is shown below:
==================== ==================
Package Minimum Version
==================== ==================
``CMake`` 2.8
``boost`` 1.46.1
``libxml2`` 2
``libxml++`` 2.36
``python`` 2.7 or 3.3+
``sqlite3`` 3.7.10
``HDF5`` 1.8.4
``Coin-Cbc`` 2.5
``CMake`` 3.16.3
``boost`` 1.71.0
``libxml2`` 2.9.10+
``libxml++`` 2.40.1
``python`` 3.8.10
``sqlite3`` 3.31.1
``HDF5`` 1.10.4+
``Coin-Cbc`` 2.10.3
``Coin-Clp`` 1.17.5
``zlib`` 1.2.11
==================== ==================

.. website_include_end
On some platforms, such as Ubuntu 16.04, the following are also necessary:

==================== ==================
Package Minimum Version
==================== ==================
``g++`` 4.8.2
``libblas-dev`` 1.2
``liblapack-dev`` 3.5.0
==================== ==================
And a few optional dependencies:
Expand All @@ -55,8 +48,8 @@ Package Minimum Version
==================== ==================
doxygen (for docs) 1.7.6.1
tcmalloc (for speed) any
Cython >=0.25 and <0.27
Python (dev version) 2.7 or 3.3+
Cython 0.29+
Python (dev version) 3.8+
Jinja2 any
NumPy 1.9+
Pandas any
Expand All @@ -81,7 +74,7 @@ Installing Dependencies (Linux and Unix)
This guide assumes that the user has root access (to issue ``sudo`` commands) and
access to a package manager or has some other suitable method of automatically
installing established libraries. This process was tested using a fresh install
of Ubuntu versions 16.04, using ``apt-get`` as the package
of Ubuntu versions 20.04 and 22.04, using ``apt-get`` as the package
manager (scroll down further for Mac OSX instructions).

The command to install a dependency takes the form of:
Expand Down Expand Up @@ -114,13 +107,13 @@ and (optionally):
#. libblas-dev
#. liblapack-dev
#. libgoogle-perftools-dev
#. python-dev or python3-dev
#. python-tables or python3-tables
#. python-pandas or python3-pandas
#. python-numpy or python3-numpy
#. python-nose or python3-nose
#. python-jinja2 or python3-jinja2
#. cython or cython3 (see note below)
#. python3-dev
#. python3-tables
#. python3-pandas
#. python3-numpy
#. python3-nose
#. python3-jinja2
#. cython3 (see note below)

For example, in order to install libxml++ (and libxml2) on your system, type:

Expand All @@ -139,18 +132,6 @@ If you'd prefer to copy/paste, the following line will install all **required**
And to install all *Cyclus* dependencies (**required and optional**):

- if using python 2.x:

.. code-block:: bash
sudo apt-get install -y cmake make libboost-all-dev libxml2-dev libxml++2.6-dev \
libsqlite3-dev libhdf5-serial-dev libbz2-dev coinor-libcbc-dev coinor-libcoinutils-dev \
coinor-libosi-dev coinor-libclp-dev coinor-libcgl-dev libblas-dev liblapack-dev g++ \
libgoogle-perftools-dev python-dev python-tables python-pandas python-numpy python-nose \
python-jinja2 cython
- if using python 3.x:

.. code-block:: bash
sudo apt-get install -y cmake make libboost-all-dev libxml2-dev libxml++2.6-dev \
Expand All @@ -166,20 +147,19 @@ To determine which version of Python is already installed on your computer, run:
python -V
Despite having installed python3, Ubuntu installations may still point at python2.7 by default. So Python -V can return a version of python that is not preferred. In that case the python version can be changed system-wide with the update-alternatives command.
Despite having installed python3, Ubuntu installations may still point at python2 by default. So Python -V can return a version of python that is not preferred. In that case the python version can be changed system-wide with the update-alternatives command.

First, you can list alternatives with the following command:

.. code-block:: bash
update-alternatives --list python
Ubuntu may not list any alternatives. To make Ubuntu aware of python 2.7 and python 3.5, use:
Ubuntu may not list any alternatives. To make Ubuntu aware of python 3, use:

.. code-block:: bash
sudo update-alternatives --install /usr/bin/python python /usr/bin/python2.7 1
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.5 2
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3 1
From now on, to switch between different versions, use:

Expand All @@ -206,7 +186,7 @@ Cython Note
^^^^^^^^^^^
If you get an error related to an old Cython version, then this may be
because the Debian stable version of Cython is 0.23.4. However,
Cyclus requires 0.25.0+. To install the latest cython version, please
Cyclus requires 0.29.0+. To install the latest cython version, please
visit the `Cython Documentation`_.

Boost Note
Expand Down
19 changes: 3 additions & 16 deletions INSTALL.rst
Original file line number Diff line number Diff line change
Expand Up @@ -12,29 +12,16 @@ provided with the source.
Dependencies
************

A full list of the Cyclus package dependencies is shown below:

==================== ==================
Package Minimum Version
==================== ==================
``CMake`` 2.8
``boost`` 1.46.1
``libxml2`` 2
``libxml++`` 2.36
``python`` 2.7 or 3.3+
``sqlite3`` 3.7.10
``HDF5`` 1.8.4
``Coin-Cbc`` 2.5
==================== ==================
A full list of the Cyclus package dependencies is listed :doc:`here <DEPENDENCIES>`:

************
Installation
************
.. website_include_start
Before going further with the installation procedure be sure you have installed
all the required dependencies listed above. We have provided detailed
instructions for :doc:`installing dependencies <DEPENDENCIES>`.for the major supported
all the required dependencies. We have provided detailed
instructions for :doc:`installing dependencies <DEPENDENCIES>` for the major supported
systems.


Expand Down
37 changes: 10 additions & 27 deletions README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -10,18 +10,18 @@ information on the entire "ecosystem" please refer to the `Cyclus website
<http://fuelcycle.org>`_.


================ ================= =================== ===================
Cyclus Projects Status
-----------------------------------------------------------------------------------
**Branch** **Cyclus** **Cycamore** **Cymetric**
================ ================= =================== ===================
main |cyclus_main| |cycamore_main| |cymetric_main|
================ ================= =================== ===================
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+--------------------+--------------------+--------------------+--------------------+
| Branch | Cyclus | Cycamore | Cymetric |
+====================+====================+====================+====================+
| ``main`` | |cyclus_main| | |cycamore_main| | |cymetric_main| |
+--------------------+--------------------+--------------------+--------------------+

.. |cyclus_main| image:: https://circleci.com/gh/cyclus/cyclus/tree/main.png?&amp;circle-token= 35d82ba8661d4f32e0f084b9d8a2388fa62c0262
.. |cycamore_main| image:: https://circleci.com/gh/cyclus/cycamore/tree/main.png?&amp;circle-token= 333211090d5d5a15110eed1adbe079a6f3a4a704
.. |cymetric_main| image:: https://circleci.com/gh/cyclus/cymetric/tree/main.png?&amp;circle-token= 72639b59387f077973af98e7ce72996eac18b96c
.. |cyclus_main| image:: https://github.com/cyclus/cyclus/actions/workflows/publish_latest.yml/badge.svg
.. |cycamore_main| image:: https://github.com/cyclus/cycamore/actions/workflows/publish_latest.yml/badge.svg
.. |cymetric_main| image:: https://github.com/cyclus/cymetric/actions/workflows/publish_latest.yml/badge.svg



Expand Down Expand Up @@ -72,24 +72,7 @@ Dependencies
************

In order to facilitate future compatibility with multiple platforms,
Cyclus is built using ``CMake``. A full list of the Cyclus package
dependencies is shown below:

==================== ==================
Package Minimum Version
==================== ==================
``CMake`` 2.8
``boost`` 1.46.1
``libxml2`` 2
``libxml++`` 2.36
``python`` 2.7 or 3.10
``sqlite3`` 3.7.10
``HDF5`` 1.8.4
``Coin-Cbc`` 2.5
``zlib`` 1.1.4
==================== ==================

For detailed instructions on installing dependencies, see `Installing Dependencies <DEPENDENCIES.rst>`_.
Cyclus is built using ``CMake``. For detailed instructions on Cyclus dependencies (including minimum version requirements), see `Installing Dependencies <DEPENDENCIES.rst>`_.

*************************
Quick Cyclus Installation
Expand Down

0 comments on commit 2eab074

Please sign in to comment.