NLopt is a library for nonlinear local and global optimization, for functions with and without gradient information. It is designed as a simple, unified interface and packaging of several free/open-source nonlinear optimization libraries.
NLopt is compiled and installed with the CMake build system
CMakeLists.txt file for available options):
git clone https://github.com/stevengj/nlopt.git cd nlopt mkdir build cd build cmake .. make sudo make install
(To build the latest development sources from git, you will need SWIG to generate the Python and Guile bindings.)
Once it is installed,
#include <nlopt.h> in your C/C++ programs and
link it with
-lnlopt -lm. You may need to use a C++ compiler to link
in order to include the C++ libraries (which are used internally by NLopt,
even though it exports a C API). See the C reference manual.