GAMS-dev / gams-cpp

GAMS C++ API

Home Page:https://www.gams.com/latest/docs/API_CPP_OVERVIEW.html

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

gams-cpp

gams-cpp is a C++ API for the General Algebraic Modeling System (GAMS). For further information about GAMS please visit GAMS or the GAMS documentation. gams-cpp uses GoogleTest which is licensed under the Revised BSD License.

How to build

0. Minimum Requirements

  • GAMS 47
  • CMake 3.8
  • any C++17 compiler with std::filesystem support (e.g. GCC 8, MSVC2017 15.7, Apple Clang 11)

1. Download and install GAMS

gams-cpp requires the GAMS low-level APIs. All those files are provided by the GAMS distribution packages, which are available for all major platforms. The installation package for your platform can be obtained from the GAMS download page. After downloading the package please follow the latest GAMS installation instructions.

Note By default GAMS will run in demo mode. Please check the download page for further details.

2. Get the gams-cpp source code

Download the gams-cpp sources from GitHub (via git or as zip archive). All information about the usage of this library can be found within the GAMS C++ API documentation.

3. Building the gams-cpp project

Start Qt Creator or a different IDE of your choice, open the CMakeList.txt file in the root folder and click 'Run CMake'. This generates the file 'gamsinclude.txt' that defines the default location of the GAMS installation location. The path of the 'gamsinclude.txt' file may have to be updated to the correct GAMS installation location on your system.

On Windows the file contains:

GAMS_DISTRIB=C:/GAMS/47

On Unix it will look like:

GAMS_DISTRIB=$$(HOME)/gams/gams47.0_linux_x64_64_sfx

Then perform a 'Build All' operation (Build->Build All) to build the library as well as all examples and tests. Finally, the examples can be executed by triggering Run button or pressing 'Ctrl+R'.

Dependencies and Licenses

Dependency License Description
cpr MIT C++ Requests is a simple wrapper around libcurl inspired by the excellent Python Requests project.
json MIT JSON for Modern C++

About

GAMS C++ API

https://www.gams.com/latest/docs/API_CPP_OVERVIEW.html

License:MIT License


Languages

Language:C++ 87.6%Language:Python 9.6%Language:CMake 1.4%Language:C 0.7%Language:Shell 0.5%Language:SCSS 0.1%Language:HTML 0.0%Language:Starlark 0.0%