diff --git a/doc/install.rst b/doc/install.rst index d4ad85fb..0cb472ff 100644 --- a/doc/install.rst +++ b/doc/install.rst @@ -12,7 +12,16 @@ Conda packages are available on ``conda-forge`` and can be installed via conda install -c conda-forge pyoptsparse This would install pyOptSparse with the built-in optimizers, as well as IPOPT. -If you wish to use optimizers not packaged by ``conda``, e.g. SNOPT, then you must build the package from source. +If you wish to use optimizers not packaged by ``conda``, e.g. SNOPT, then you must either build the package from source or use the installation script below. +If you have the SNOPT precompiled library available, it is possible to dynamically link it to pyOptSparse following the instructions on the :ref:`SNOPT installation page`. + +Using an installation script +---------------------------- +You can build and install pyOptsparse using a `Python script `_ developed by the OpenMDAO team. +For usage, see the instruction on the README of the repo. + +This script is particularly useful for installing :ref:`IPOPT` and its dependencies. +It can also support SNOPT installation if you have access to the SNOPT source code. Building from source -------------------- @@ -37,6 +46,7 @@ The only exception is ``numpy``, which is required as part of the build process * In Linux, the python header files (``python-dev``) are also required. * **We do not support operating systems other than Linux.** For macOS users, the conda package may work out of the box if you do not need any non-default optimizers. + Also, the installation script by OpenMDAO likely works on macOS. For Windows users, a conda package is on the way, if it's not already in the repos. This comes with the same disclaimer as the macOS conda package. Alternatively, follow the :ref:`conda build instructions` below as this will work on any platform. diff --git a/doc/optimizers/IPOPT.rst b/doc/optimizers/IPOPT.rst index ebd03bc0..dd2ff586 100644 --- a/doc/optimizers/IPOPT.rst +++ b/doc/optimizers/IPOPT.rst @@ -1,3 +1,5 @@ +.. _ipopt: + IPOPT ===== IPOPT (Interior Point OPTimizer) is an open source interior point optimizer, designed for large-scale nonlinear optimization. diff --git a/doc/optimizers/SNOPT.rst b/doc/optimizers/SNOPT.rst index f5257f1c..beeb42ec 100644 --- a/doc/optimizers/SNOPT.rst +++ b/doc/optimizers/SNOPT.rst @@ -25,6 +25,9 @@ We currently test v7.7.7 and v7.7.1. Installation by conda ********************* + +.. _snopt_by_conda: + When installing via conda, all pyoptsparse binaries are pre-compiled and installed as part of the package. However, the `snopt` binding module cannot be included as part of the package due to license restrictions.