From d4c52cb38a2eab29224b48baf7dd9af35b0e60f0 Mon Sep 17 00:00:00 2001 From: Sara Konradi Date: Wed, 15 Apr 2020 11:12:07 +0200 Subject: [PATCH 01/21] Add module loading path subheading --- doc/installation/linux_install.rst | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/doc/installation/linux_install.rst b/doc/installation/linux_install.rst index a811a0ebe0..295c1f2d6c 100644 --- a/doc/installation/linux_install.rst +++ b/doc/installation/linux_install.rst @@ -71,6 +71,11 @@ The following are the basic steps to compile and install NEST from source code: NEST should now be successfully installed on your system. You should now be able to ``import nest`` from a python or ipython shell. +Setting the module loading path +------------------------------- + + + .. admonition:: IMPORTANT! If your operating system does not find the ``nest`` executable or if Python does not find the ``nest`` module, your path variables may not be set correctly. This may also be the case if Python cannot load the ``nest`` module due to missing or incompatible libraries. In this case, please run: From 8918bb896591c0090c260a4ffbcd36e6fcb3aebb Mon Sep 17 00:00:00 2001 From: Sara Konradi Date: Wed, 15 Apr 2020 11:30:21 +0200 Subject: [PATCH 02/21] Add module path information --- doc/installation/linux_install.rst | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/doc/installation/linux_install.rst b/doc/installation/linux_install.rst index 295c1f2d6c..50a5b7e21e 100644 --- a/doc/installation/linux_install.rst +++ b/doc/installation/linux_install.rst @@ -74,17 +74,17 @@ NEST should now be successfully installed on your system. You should now be able Setting the module loading path ------------------------------- +If your operating system does not find the ``nest`` executable or if Python does not find the ``nest`` module, your path variables may not be set correctly. This may also be the case if Python cannot load the ``nest`` module due to missing or incompatible libraries. +In order to correctly set the module loading path or build an extension module for NEST, you need to set the ``NEST_MODULE_PATH``. -.. admonition:: IMPORTANT! - - If your operating system does not find the ``nest`` executable or if Python does not find the ``nest`` module, your path variables may not be set correctly. This may also be the case if Python cannot load the ``nest`` module due to missing or incompatible libraries. In this case, please run: +You can do this correctly by sourcing ``nest_vars.sh``: .. code-block:: sh - source /bin/nest_vars.sh + source /bin/nest_vars.sh - to set the necessary environment variables. You may want to include this line in your ``.bashrc`` file, so that the environment variables are set automatically. +This way, you can set the necessary environment variables. You may want to include this line in your ``.bashrc`` file, so that the environment variables are set automatically. See the :doc:`Getting started <../getting_started>` pages to find out how to get going with NEST or check out our :doc:`example networks <../auto_examples/index>`. From c634598913abb910f064ac3a2be475b457781815 Mon Sep 17 00:00:00 2001 From: Sara Konradi Date: Wed, 15 Apr 2020 11:37:15 +0200 Subject: [PATCH 03/21] Update nest_vars.sh section --- doc/installation/linux_install.rst | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/doc/installation/linux_install.rst b/doc/installation/linux_install.rst index 50a5b7e21e..2b7e5edfb2 100644 --- a/doc/installation/linux_install.rst +++ b/doc/installation/linux_install.rst @@ -76,15 +76,17 @@ Setting the module loading path If your operating system does not find the ``nest`` executable or if Python does not find the ``nest`` module, your path variables may not be set correctly. This may also be the case if Python cannot load the ``nest`` module due to missing or incompatible libraries. -In order to correctly set the module loading path or build an extension module for NEST, you need to set the ``NEST_MODULE_PATH``. +In order to correctly set the module loading path or build an extension module for NEST: -You can do this correctly by sourcing ``nest_vars.sh``: +1. Source ``nest_vars.sh``: .. code-block:: sh source /bin/nest_vars.sh -This way, you can set the necessary environment variables. You may want to include this line in your ``.bashrc`` file, so that the environment variables are set automatically. +2. Set the ``NEST_MODULE_PATH``. + +By sourcing ``nest_vars.sh``, you can set the necessary environment variables. You may want to include this line in your ``.bashrc`` file, so that the environment variables are set automatically. See the :doc:`Getting started <../getting_started>` pages to find out how to get going with NEST or check out our :doc:`example networks <../auto_examples/index>`. From e3177884c5e7928ccdab2dd1d5d509ed10c0a362 Mon Sep 17 00:00:00 2001 From: "C. Linssen" Date: Tue, 21 Apr 2020 14:52:41 +0200 Subject: [PATCH 04/21] update documentation of nest_vars.sh --- doc/installation/linux_install.rst | 108 +++++++++++++++++------------ 1 file changed, 63 insertions(+), 45 deletions(-) diff --git a/doc/installation/linux_install.rst b/doc/installation/linux_install.rst index 2b7e5edfb2..18c4800921 100644 --- a/doc/installation/linux_install.rst +++ b/doc/installation/linux_install.rst @@ -3,11 +3,30 @@ Ubuntu/Debian Installation .. _standard: -Installation from source --------------------------- +Dependencies +------------ + +To build NEST, you need a recent version of `CMake `_ and `libtool `_; the latter should be available for most systems and is probably already installed. + +.. note:: NEST requires at least version v2.8.12 of cmake, but we recommend v3.4 or later. You can type ``cmake --version`` on the commandline to check your current version. + +The `GNU readline library `_ is recommended if you use NEST interactively **without Python**. Although most Linux distributions have GNU readline installed, you still need to install its development package if want to use GNU readline with NEST. GNU readline itself depends on `libncurses `_ (or libtermcap on older systems). Again, the development packages are needed to compile NEST. + +The `GNU Scientific Library `_ is needed by several neuron models, in particular those with conductance based synapses. If you want these models, please install the GNU Scientific Library along with its development packages. + +If you want to use PyNEST, we recommend to install the following along with their development packages: + +- `Python `_ +- `NumPy `_ +- `SciPy `_ +- `matplotlib `_ +- `IPython `_ -The following are the basic steps to compile and install NEST from source code: +Installation from source +------------------------ + +The following are the basic steps to compile and install NEST from source code. See the :doc:`Configuration Options ` or the :doc:`High Performance Computing ` instructions to further adjust settings for your system. * If not already installed on your system, the following packages are recommended (see also the `Dependencies`_ section) @@ -59,8 +78,6 @@ The following are the basic steps to compile and install NEST from source code: .. note:: ``/install/path`` should be an absolute path - - * Compile and install NEST: .. code-block:: sh @@ -69,51 +86,15 @@ The following are the basic steps to compile and install NEST from source code: make install make installcheck -NEST should now be successfully installed on your system. You should now be able to ``import nest`` from a python or ipython shell. - -Setting the module loading path -------------------------------- - -If your operating system does not find the ``nest`` executable or if Python does not find the ``nest`` module, your path variables may not be set correctly. This may also be the case if Python cannot load the ``nest`` module due to missing or incompatible libraries. - -In order to correctly set the module loading path or build an extension module for NEST: - -1. Source ``nest_vars.sh``: - - .. code-block:: sh +NEST should now be successfully installed on your system. - source /bin/nest_vars.sh +* Before using NEST, make sure that all the environment variables are set correctly. See the section `Environment variables`_ for details. -2. Set the ``NEST_MODULE_PATH``. +* See the :doc:`Getting started <../getting_started>` pages to find out how to get going with NEST or check out our :doc:`example networks <../auto_examples/index>`. -By sourcing ``nest_vars.sh``, you can set the necessary environment variables. You may want to include this line in your ``.bashrc`` file, so that the environment variables are set automatically. - -See the :doc:`Getting started <../getting_started>` pages to find out how to get going with NEST or check out our :doc:`example networks <../auto_examples/index>`. - -Dependencies -------------- - -To build NEST, you need a recent version of `CMake `_ and `libtool `_; the latter should be available for most systems and is probably already installed. - -.. note:: NEST requires at least version v2.8.12 of cmake, but we recommend v3.4 or later. You can type ``cmake --version`` on the commandline to check your current version. - -The `GNU readline library `_ is recommended if you use NEST interactively **without Python**. Although most Linux distributions have GNU readline installed, you still need to install its development package if want to use GNU readline with NEST. GNU readline itself depends on `libncurses `_ (or libtermcap on older systems). Again, the development packages are needed to compile NEST. - -The `GNU Scientific Library `_ is needed by several neuron models, in particular those with conductance based synapses. If you want these models, please install the GNU Scientific Library along with its development packages. - -If you want to use PyNEST, we recommend to install the following along with their development packages: - -- `Python `_ -- `NumPy `_ -- `SciPy `_ -- `matplotlib `_ -- `IPython `_ - - -See the :doc:`Configuration Options ` or the :doc:`High Performance Computing ` instructions to further adjust settings for your system. What gets installed where ---------------------------- +------------------------- By default, everything will be installed to the subdirectories ``/install/path/{bin,lib,share}``, where ``/install/path`` is the install path given to ``cmake``: @@ -136,3 +117,40 @@ If you want to run the ``nest`` executable or use the ``nest`` Python module wit The script ``/install/path/bin/nest_vars.sh`` can be sourced in ``.bashrc`` and will set these paths for you. This also allows to switch between NEST installations in a convenient manner. +Environment variables +--------------------- + +There are several environment variables that describe where components of the NEST installation can be found. In particular when installing to a custom directory, it is typically necessary to explicitly set these variables, so that your operating system can find the NEST binaries and libraries. + +A shell script is provided in ``bin/nest_vars.sh`` to make setting the environment variables more convenient. Setting the environment variables in your active shell session requires sourcing the script: + +.. code-block:: sh + + source bin/nest_vars.sh + +You may want to include this line in your ``.bashrc`` file, so that the environment variables are set automatically. + +The following variables are set in ``nest_vars.sh``: + +.. list-table:: + :header-rows: 1 + :widths: 10 30 + + * - Path + - Description + * - ``NEST_INSTALL_DIR`` + - NEST installation directory. Contains ``bin``, ``lib``, etc. + * - ``NEST_DATA_DIR`` + - NEST finds standard *.sli files ``$NEST_DATA_DIR/sli`` + * - ``NEST_DOC_DIR`` + - NEST built-in online help finds help files ``$NEST_DOC_DIR/help`` + * - ``NEST_PYTHON_PREFIX`` + - The path where the PyNEST bindings are installed. + * - ``PYTHONPATH`` + - Search path for non-standard Python module locations. Will be prepended to or created to if it does not exist. + * - ``PATH`` + - Search path for binaries. Will be prepended to or created to if it does not exist. + * - ``LD_LIBRARY_PATH`` + - Search path for shared objects (*.so files). Note: called ``DYLD_LIBRARY_PATH`` on MacOS. Will be prepended to or created to if it does not exist. + +If your operating system does not find the ``nest`` executable or if Python does not find the ``nest`` module, your path variables may not be set correctly. This may also be the case if Python cannot load the ``nest`` module due to missing or incompatible libraries. From e139456ff4b9646470eedd37a6891b651a0064fc Mon Sep 17 00:00:00 2001 From: "C. Linssen" Date: Wed, 22 Apr 2020 11:43:06 +0200 Subject: [PATCH 05/21] manual rebase linux_install.rst on latest master branch --- doc/installation/linux_install.rst | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/doc/installation/linux_install.rst b/doc/installation/linux_install.rst index 18c4800921..5f7e91bf43 100644 --- a/doc/installation/linux_install.rst +++ b/doc/installation/linux_install.rst @@ -8,18 +8,17 @@ Dependencies To build NEST, you need a recent version of `CMake `_ and `libtool `_; the latter should be available for most systems and is probably already installed. -.. note:: NEST requires at least version v2.8.12 of cmake, but we recommend v3.4 or later. You can type ``cmake --version`` on the commandline to check your current version. - +.. note:: NEST requires CMake 3.12 or higher, but we recommend version 3.16.X. You can type ``cmake --version`` on the commandline to check your current version. The `GNU readline library `_ is recommended if you use NEST interactively **without Python**. Although most Linux distributions have GNU readline installed, you still need to install its development package if want to use GNU readline with NEST. GNU readline itself depends on `libncurses `_ (or libtermcap on older systems). Again, the development packages are needed to compile NEST. The `GNU Scientific Library `_ is needed by several neuron models, in particular those with conductance based synapses. If you want these models, please install the GNU Scientific Library along with its development packages. If you want to use PyNEST, we recommend to install the following along with their development packages: -- `Python `_ +- `Python 3.X `_ - `NumPy `_ - `SciPy `_ -- `matplotlib `_ +- `Matplotlib 3.X `_ - `IPython `_ From 0768ee4cc245c50bcb68c85fc734a77da72ffd78 Mon Sep 17 00:00:00 2001 From: Sara Konradi Date: Wed, 22 Apr 2020 12:50:56 +0200 Subject: [PATCH 06/21] Shorten title underline --- doc/installation/linux_install.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/installation/linux_install.rst b/doc/installation/linux_install.rst index 5f7e91bf43..bd270ef907 100644 --- a/doc/installation/linux_install.rst +++ b/doc/installation/linux_install.rst @@ -1,5 +1,5 @@ Ubuntu/Debian Installation -=============================== +========================== .. _standard: From c57244b953e0e3f357173c44627f8d4a5cf79684 Mon Sep 17 00:00:00 2001 From: sarakonradi <58212853+sarakonradi@users.noreply.github.com> Date: Wed, 22 Apr 2020 12:53:05 +0200 Subject: [PATCH 07/21] Remore "to" as suggested by @clinssen Co-Authored-By: clinssen --- doc/installation/linux_install.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/installation/linux_install.rst b/doc/installation/linux_install.rst index bd270ef907..3bf00960ee 100644 --- a/doc/installation/linux_install.rst +++ b/doc/installation/linux_install.rst @@ -146,7 +146,7 @@ The following variables are set in ``nest_vars.sh``: * - ``NEST_PYTHON_PREFIX`` - The path where the PyNEST bindings are installed. * - ``PYTHONPATH`` - - Search path for non-standard Python module locations. Will be prepended to or created to if it does not exist. + - Search path for non-standard Python module locations. Will be prepended to or created if it does not exist. * - ``PATH`` - Search path for binaries. Will be prepended to or created to if it does not exist. * - ``LD_LIBRARY_PATH`` From c22db7f490083fd5a5691f244f68cadda18f2420 Mon Sep 17 00:00:00 2001 From: sarakonradi <58212853+sarakonradi@users.noreply.github.com> Date: Wed, 22 Apr 2020 12:53:05 +0200 Subject: [PATCH 08/21] Remove "to" as suggested by @clinssen Co-Authored-By: clinssen --- doc/installation/linux_install.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/installation/linux_install.rst b/doc/installation/linux_install.rst index bd270ef907..3bf00960ee 100644 --- a/doc/installation/linux_install.rst +++ b/doc/installation/linux_install.rst @@ -146,7 +146,7 @@ The following variables are set in ``nest_vars.sh``: * - ``NEST_PYTHON_PREFIX`` - The path where the PyNEST bindings are installed. * - ``PYTHONPATH`` - - Search path for non-standard Python module locations. Will be prepended to or created to if it does not exist. + - Search path for non-standard Python module locations. Will be prepended to or created if it does not exist. * - ``PATH`` - Search path for binaries. Will be prepended to or created to if it does not exist. * - ``LD_LIBRARY_PATH`` From 70c824bffc3f786caf03128d7659847a80e61880 Mon Sep 17 00:00:00 2001 From: sarakonradi <58212853+sarakonradi@users.noreply.github.com> Date: Wed, 22 Apr 2020 12:57:12 +0200 Subject: [PATCH 09/21] Remove "to" as suggested by @clinssen Co-Authored-By: clinssen --- doc/installation/linux_install.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/installation/linux_install.rst b/doc/installation/linux_install.rst index 3bf00960ee..d03c840f86 100644 --- a/doc/installation/linux_install.rst +++ b/doc/installation/linux_install.rst @@ -148,7 +148,7 @@ The following variables are set in ``nest_vars.sh``: * - ``PYTHONPATH`` - Search path for non-standard Python module locations. Will be prepended to or created if it does not exist. * - ``PATH`` - - Search path for binaries. Will be prepended to or created to if it does not exist. + - Search path for binaries. Will be prepended to or created if it does not exist. * - ``LD_LIBRARY_PATH`` - Search path for shared objects (*.so files). Note: called ``DYLD_LIBRARY_PATH`` on MacOS. Will be prepended to or created to if it does not exist. From 52d6863d7576f54cf1b683086b59b4fe7caaf11e Mon Sep 17 00:00:00 2001 From: sarakonradi <58212853+sarakonradi@users.noreply.github.com> Date: Wed, 22 Apr 2020 12:58:12 +0200 Subject: [PATCH 10/21] Remove "to" as suggested by @clinssen Co-Authored-By: clinssen --- doc/installation/linux_install.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/installation/linux_install.rst b/doc/installation/linux_install.rst index d03c840f86..559c6e7f79 100644 --- a/doc/installation/linux_install.rst +++ b/doc/installation/linux_install.rst @@ -150,6 +150,6 @@ The following variables are set in ``nest_vars.sh``: * - ``PATH`` - Search path for binaries. Will be prepended to or created if it does not exist. * - ``LD_LIBRARY_PATH`` - - Search path for shared objects (*.so files). Note: called ``DYLD_LIBRARY_PATH`` on MacOS. Will be prepended to or created to if it does not exist. + - Search path for shared objects (*.so files). Note: called ``DYLD_LIBRARY_PATH`` on MacOS. Will be prepended to or created if it does not exist. If your operating system does not find the ``nest`` executable or if Python does not find the ``nest`` module, your path variables may not be set correctly. This may also be the case if Python cannot load the ``nest`` module due to missing or incompatible libraries. From 7da3acefddd2974918edb3232171acaa0f1d9730 Mon Sep 17 00:00:00 2001 From: sarakonradi <58212853+sarakonradi@users.noreply.github.com> Date: Wed, 22 Apr 2020 12:59:12 +0200 Subject: [PATCH 11/21] Update CMake note as suggested by @clinssen Co-Authored-By: clinssen --- doc/installation/linux_install.rst | 1 + 1 file changed, 1 insertion(+) diff --git a/doc/installation/linux_install.rst b/doc/installation/linux_install.rst index 559c6e7f79..e077dc09fe 100644 --- a/doc/installation/linux_install.rst +++ b/doc/installation/linux_install.rst @@ -9,6 +9,7 @@ Dependencies To build NEST, you need a recent version of `CMake `_ and `libtool `_; the latter should be available for most systems and is probably already installed. .. note:: NEST requires CMake 3.12 or higher, but we recommend version 3.16.X. You can type ``cmake --version`` on the commandline to check your current version. + The `GNU readline library `_ is recommended if you use NEST interactively **without Python**. Although most Linux distributions have GNU readline installed, you still need to install its development package if want to use GNU readline with NEST. GNU readline itself depends on `libncurses `_ (or libtermcap on older systems). Again, the development packages are needed to compile NEST. The `GNU Scientific Library `_ is needed by several neuron models, in particular those with conductance based synapses. If you want these models, please install the GNU Scientific Library along with its development packages. From 92641c02c37453a644d266c68a7f507ad3d6d754 Mon Sep 17 00:00:00 2001 From: Sara Konradi Date: Thu, 23 Apr 2020 14:37:18 +0200 Subject: [PATCH 12/21] Add CMake install link, as suggested by @gtrensch --- doc/installation/linux_install.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/installation/linux_install.rst b/doc/installation/linux_install.rst index b9a7964656..54e11c57d0 100644 --- a/doc/installation/linux_install.rst +++ b/doc/installation/linux_install.rst @@ -6,7 +6,7 @@ Ubuntu/Debian Installation Dependencies ------------ -To build NEST, you need a recent version of `CMake `_ and `libtool `_; the latter should be available for most systems and is probably already installed. +To build NEST, you need a recent version of `CMake `_ and `libtool `_; the latter should be available for most systems and is probably already installed. .. note:: NEST requires CMake 3.12 or higher, but we recommend version 3.16.X. You can type ``cmake --version`` on the commandline to check your current version. From 6e3462d14fa2a1d83795c41d58b1f76f682efe9e Mon Sep 17 00:00:00 2001 From: "C. Linssen" Date: Fri, 24 Apr 2020 13:29:07 +0200 Subject: [PATCH 13/21] change apt package versions to Python 3 --- doc/installation/linux_install.rst | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/doc/installation/linux_install.rst b/doc/installation/linux_install.rst index 54e11c57d0..8dd0cdd211 100644 --- a/doc/installation/linux_install.rst +++ b/doc/installation/linux_install.rst @@ -8,7 +8,7 @@ Dependencies To build NEST, you need a recent version of `CMake `_ and `libtool `_; the latter should be available for most systems and is probably already installed. -.. note:: NEST requires CMake 3.12 or higher, but we recommend version 3.16.X. You can type ``cmake --version`` on the commandline to check your current version. +.. note:: NEST requires CMake 3.12 or higher, but we recommend version 3.16. You can type ``cmake --version`` on the commandline to check your current version. The `GNU readline library `_ is recommended if you use NEST interactively **without Python**. Although most Linux distributions have GNU readline installed, you still need to install its development package if want to use GNU readline with NEST. GNU readline itself depends on `libncurses `_ (or libtermcap on older systems). Again, the development packages are needed to compile NEST. @@ -16,10 +16,10 @@ The `GNU Scientific Library `_ is needed by se If you want to use PyNEST, we recommend to install the following along with their development packages: -- `Python 3.X `_ +- `Python 3.5 or higher `_ - `NumPy `_ - `SciPy `_ -- `Matplotlib 3.X `_ +- `Matplotlib 3.0 or higher `_ - `IPython `_ @@ -32,17 +32,17 @@ The following are the basic steps to compile and install NEST from source code. .. code-block:: bash - sudo apt-get install -y \ + sudo apt install -y \ cython \ libgsl-dev \ libltdl-dev \ libncurses-dev \ libreadline-dev \ - python-all-dev \ - python-numpy \ - python-scipy \ - python-matplotlib \ - python-nose \ + python3-all-dev \ + python3-numpy \ + python3-scipy \ + python3-matplotlib \ + python3-nose \ openmpi-bin \ libopenmpi-dev From df499ae8389a8c0e234fb938417e31662ba55449 Mon Sep 17 00:00:00 2001 From: sarakonradi <58212853+sarakonradi@users.noreply.github.com> Date: Tue, 28 Apr 2020 11:58:02 +0200 Subject: [PATCH 14/21] Update environment variables information in doc/installation/linux_install.rst Co-Authored-By: Jochen Martin Eppler --- doc/installation/linux_install.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/installation/linux_install.rst b/doc/installation/linux_install.rst index 8dd0cdd211..6306748787 100644 --- a/doc/installation/linux_install.rst +++ b/doc/installation/linux_install.rst @@ -88,7 +88,7 @@ The following are the basic steps to compile and install NEST from source code. NEST should now be successfully installed on your system. -* Before using NEST, make sure that all the environment variables are set correctly. See the section `Environment variables`_ for details. +* Before using NEST, make sure that all required environment variables are set correctly. In short, this can be established by sourcing the shell script `nest_vars.sh`, which is installed into the path for binaries selected during the CMake run. See the section `Environment variables`_ for details. * See the :doc:`Getting started <../getting_started>` pages to find out how to get going with NEST or check out our :doc:`example networks <../auto_examples/index>`. From 517debf3f7c17fda200ed6effa2d733618d875c1 Mon Sep 17 00:00:00 2001 From: sarakonradi <58212853+sarakonradi@users.noreply.github.com> Date: Tue, 28 Apr 2020 11:58:53 +0200 Subject: [PATCH 15/21] Update "environment variables" section in doc/installation/linux_install.rst Co-Authored-By: Jochen Martin Eppler --- doc/installation/linux_install.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/installation/linux_install.rst b/doc/installation/linux_install.rst index 6306748787..c5f50d3434 100644 --- a/doc/installation/linux_install.rst +++ b/doc/installation/linux_install.rst @@ -120,7 +120,7 @@ The script ``/install/path/bin/nest_vars.sh`` can be sourced in ``.bashrc`` and Environment variables --------------------- -There are several environment variables that describe where components of the NEST installation can be found. In particular when installing to a custom directory, it is typically necessary to explicitly set these variables, so that your operating system can find the NEST binaries and libraries. +A number of environment variables are used to specify where the components of a NEST installation are found. In particular when installing to a custom directory, it is typically necessary to explicitly set these variables, so that your operating system can find the NEST binaries, its libraries and custom extension modules. A shell script is provided in ``bin/nest_vars.sh`` to make setting the environment variables more convenient. Setting the environment variables in your active shell session requires sourcing the script: From 592f5c066d16475c2e41c9d64d9ba69ff9d66a80 Mon Sep 17 00:00:00 2001 From: sarakonradi <58212853+sarakonradi@users.noreply.github.com> Date: Tue, 28 Apr 2020 11:59:20 +0200 Subject: [PATCH 16/21] Update shell script information in doc/installation/linux_install.rst Co-Authored-By: Jochen Martin Eppler --- doc/installation/linux_install.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/installation/linux_install.rst b/doc/installation/linux_install.rst index c5f50d3434..19adffb5aa 100644 --- a/doc/installation/linux_install.rst +++ b/doc/installation/linux_install.rst @@ -122,7 +122,7 @@ Environment variables A number of environment variables are used to specify where the components of a NEST installation are found. In particular when installing to a custom directory, it is typically necessary to explicitly set these variables, so that your operating system can find the NEST binaries, its libraries and custom extension modules. -A shell script is provided in ``bin/nest_vars.sh`` to make setting the environment variables more convenient. Setting the environment variables in your active shell session requires sourcing the script: +For your convenience, a shell script setting all required environment variables is provided in ``bin/nest_vars.sh``. Setting the environment variables in your active shell session requires sourcing the script: .. code-block:: sh From e028e6d7ef9479e43f783efb403e236c696a9c25 Mon Sep 17 00:00:00 2001 From: sarakonradi <58212853+sarakonradi@users.noreply.github.com> Date: Tue, 28 Apr 2020 12:02:01 +0200 Subject: [PATCH 17/21] Apply remaining suggestions to doc/installation/linux_install.rst Co-Authored-By: Jochen Martin Eppler --- doc/installation/linux_install.rst | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/doc/installation/linux_install.rst b/doc/installation/linux_install.rst index 19adffb5aa..ef71982add 100644 --- a/doc/installation/linux_install.rst +++ b/doc/installation/linux_install.rst @@ -128,7 +128,7 @@ For your convenience, a shell script setting all required environment variables source bin/nest_vars.sh -You may want to include this line in your ``.bashrc`` file, so that the environment variables are set automatically. +You may want to include this line in your ``.bashrc`` file, so that the environment variables are set automatically whenever you open a new terminal. The following variables are set in ``nest_vars.sh``: @@ -136,21 +136,21 @@ The following variables are set in ``nest_vars.sh``: :header-rows: 1 :widths: 10 30 - * - Path + * - Variable - Description * - ``NEST_INSTALL_DIR`` - NEST installation directory. Contains ``bin``, ``lib``, etc. * - ``NEST_DATA_DIR`` - - NEST finds standard *.sli files ``$NEST_DATA_DIR/sli`` + - NEST finds standard *.sli files in ``$NEST_DATA_DIR/sli`` * - ``NEST_DOC_DIR`` - - NEST built-in online help finds help files ``$NEST_DOC_DIR/help`` + - NEST built-in online help finds help files in ``$NEST_DOC_DIR/help`` * - ``NEST_PYTHON_PREFIX`` - The path where the PyNEST bindings are installed. * - ``PYTHONPATH`` - - Search path for non-standard Python module locations. Will be prepended to or created if it does not exist. + - Search path for non-standard Python module locations. Will be newly set or prepended to the already existing variable if it is already set. * - ``PATH`` - - Search path for binaries. Will be prepended to or created if it does not exist. + - Search path for binaries. Will be newly set or prepended to the already existing variable if it is already set. * - ``LD_LIBRARY_PATH`` - - Search path for shared objects (*.so files). Note: called ``DYLD_LIBRARY_PATH`` on MacOS. Will be prepended to or created if it does not exist. + - Search path for shared objects (*.so files). Note: called ``DYLD_LIBRARY_PATH`` on MacOS. Will be newly set or prepended to the already existing variable if it is already set. If your operating system does not find the ``nest`` executable or if Python does not find the ``nest`` module, your path variables may not be set correctly. This may also be the case if Python cannot load the ``nest`` module due to missing or incompatible libraries. From fd1cb9c45c0ff21a016391cd17be356d3fffec6f Mon Sep 17 00:00:00 2001 From: Sara Konradi Date: Tue, 28 Apr 2020 12:14:44 +0200 Subject: [PATCH 18/21] Update note format in doc/installation/linux_install.rst --- doc/installation/linux_install.rst | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/doc/installation/linux_install.rst b/doc/installation/linux_install.rst index 691f16dd49..8d3f40e88c 100644 --- a/doc/installation/linux_install.rst +++ b/doc/installation/linux_install.rst @@ -8,7 +8,9 @@ Dependencies To build NEST, you need a recent version of `CMake `_ and `libtool `_; the latter should be available for most systems and is probably already installed. -.. note:: NEST requires CMake 3.12 or higher, but we recommend version 3.16. You can type ``cmake --version`` on the commandline to check your current version. +.. note:: + + NEST requires CMake 3.12 or higher, but we recommend version 3.16. You can type ``cmake --version`` on the commandline to check your current version. The `GNU readline library `_ is recommended if you use NEST interactively **without Python**. Although most Linux distributions have GNU readline installed, you still need to install its development package if want to use GNU readline with NEST. GNU readline itself depends on `libncurses `_ (or libtermcap on older systems). Again, the development packages are needed to compile NEST. From 7675fd65529acbdd36d68aa9b5613ffcab7b9c09 Mon Sep 17 00:00:00 2001 From: Sara Konradi Date: Mon, 4 May 2020 10:20:13 +0200 Subject: [PATCH 19/21] Refer to 'Environment variables' section, as suggested by @clinssen --- doc/installation/linux_install.rst | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/doc/installation/linux_install.rst b/doc/installation/linux_install.rst index 8d3f40e88c..cea3e7d82e 100644 --- a/doc/installation/linux_install.rst +++ b/doc/installation/linux_install.rst @@ -111,15 +111,11 @@ By default, everything will be installed to the subdirectories ``/install/path/{ - PyNEST examples ``/install/path/share/doc/nest/examples/pynest`` - Extras ``/install/path/share/nest/extras/`` -If you want to run the ``nest`` executable or use the ``nest`` Python module without providing explicit paths, you have to add the installation directory to your search paths. For example, if you are using bash: +If you want to run the ``nest`` executable or use the ``nest`` Python module without providing explicit paths, you have to add the installation directory to your search paths. +Please refer to the :ref:`next section ` section for this. -.. code-block:: sh - - export PATH=$PATH:/install/path/bin - export PYTHONPATH=/install/path/lib/pythonX.Y/site-packages:$PYTHONPATH - -The script ``/install/path/bin/nest_vars.sh`` can be sourced in ``.bashrc`` and will set these paths for you. This also allows to switch between NEST installations in a convenient manner. +.. _environment_variables: Environment variables --------------------- From 16a9e5f79021a06c41fa0a99b7d3aa8e35b86de5 Mon Sep 17 00:00:00 2001 From: Sara Konradi Date: Mon, 4 May 2020 10:23:54 +0200 Subject: [PATCH 20/21] Update install path, as suggested by @clinssen --- doc/installation/linux_install.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/installation/linux_install.rst b/doc/installation/linux_install.rst index cea3e7d82e..9f7d7cd810 100644 --- a/doc/installation/linux_install.rst +++ b/doc/installation/linux_install.rst @@ -122,7 +122,7 @@ Environment variables A number of environment variables are used to specify where the components of a NEST installation are found. In particular when installing to a custom directory, it is typically necessary to explicitly set these variables, so that your operating system can find the NEST binaries, its libraries and custom extension modules. -For your convenience, a shell script setting all required environment variables is provided in ``bin/nest_vars.sh``. Setting the environment variables in your active shell session requires sourcing the script: +For your convenience, a shell script setting all required environment variables is provided in ``/install/path/bin/nest_vars.sh``. Setting the environment variables in your active shell session requires sourcing the script: .. code-block:: sh From b8298edf93b171a4e4ecf623c7dcfd7380cc6646 Mon Sep 17 00:00:00 2001 From: sarakonradi <58212853+sarakonradi@users.noreply.github.com> Date: Wed, 20 May 2020 12:47:02 +0200 Subject: [PATCH 21/21] Add information on Boost Co-authored-by: terhorstd --- doc/installation/linux_install.rst | 1 + 1 file changed, 1 insertion(+) diff --git a/doc/installation/linux_install.rst b/doc/installation/linux_install.rst index 9f7d7cd810..b013c20a4f 100644 --- a/doc/installation/linux_install.rst +++ b/doc/installation/linux_install.rst @@ -16,6 +16,7 @@ The `GNU readline library `_ is recommend The `GNU Scientific Library `_ is needed by several neuron models, in particular those with conductance based synapses. If you want these models, please install the GNU Scientific Library along with its development packages. +For efficient sorting algorithms the Boost library is used. Since this is an essential factor for the communication of spikes, some simulations are significantly faster when NEST is compile with Boost. If you want to use PyNEST, we recommend to install the following along with their development packages: - `Python 3.5 or higher `_