Successfully built and tested on Windows, MacOS, Ubuntu, Arch Linux, Kali Linux, Debian, CentOS, Alpine, Fedora Linux, openSUSE Leap and openSUSE Tumbleweed
- curl
- JSON for Modern C++
- PDCurses for Windows
- tabulate
- ncurses for UNIX-based system
You can simply use the libraries and the header files which come preinstalled in the include
and the lib
folder. However, if you wish to build them yourself, you can have a look at the repository's page mentioned above and build them on your own.
Note: All the libraries which come preinstalled are compiled as x86 for maximum compatibility.
-
You can automatically build the libraries if you want by just executing
prereq.bat
. It will download the latest version of all libraries and build it using Visual Studio.Note: The script runs on two tools: Git and Visual Studio (optionally MinGW).
Note: For PDCurses, you can build it through MinGW or Visual Studio, you will be prompted to enter the choice during the build process.
-
You can manually build and install all the libraries by visiting their Github pages and following their build rules.
Note: For building most of the libraries you will be required to install Visual Studio.
You can simply get the libraries using the sudo apt install command in Debian Linux, Ubuntu.
Just do:
apt install g++
apt install libcurl4-openssl-dev
apt-get install libncurses5-dev libncursesw5-dev
Or in MacOS, first install Homebrew and then do:
brew install g++
brew install make
brew install curl
brew install ncurses
Or if you are using Red Hat linux, CentOS or Fedora Linux 21 or older do:
yum group install "Development Tools"
yum install libcurl
yum install ncurses-devel
Or if you are using Fedora Linux 22.x+ do:
dnf install gcc-c++
yum install libcurl
dnf install ncurses-devel
Or if you are using Arch linux or Manjaro do:
pacman -Sy gcc
pacman -S curl
pacman -S ncurses
The header files are platform-independent and hence the above commands will install/update your libraries.
This will setup the environment required for building the project.
Compile build.cpp
by launching terminal in the same folder:
g++ build.cpp -o build
You can run the build
file with the file to be built i.e.:
build main
CMake for building the project.
You can know the functionality of all files in the FILE_STRUCTURE file.
You can visit Whimsical for an interactive design diagram.
Check the LICENSE file
Copyright © 1996 - 2021, Daniel Stenberg, daniel@haxx.se, and many contributors, see the THANKS file.
All rights reserved.
Permission to use, copy, modify, and distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Except as contained in this notice, the name of a copyright holder shall not be used in advertising or otherwise to promote the sale, use or other dealings in this Software without prior written authorization of the copyright holder.
Copyright © 2013-2021 Niels Lohmann
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Special thanks to the maintainer of the repository William McBrine wmcbrine@gmail.com and Chris Szurgot szurgot@itribe.net for porting it to the Windows console.
Copyright © 2018-2019,2020 Thomas E. Dickey
Copyright © 1998-2016,2017 Free Software Foundation, Inc.
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, distribute with modifications sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Except as contained in this notice, the name(s) of the above copyright holders shall not be used in advertising or otherwise to promote the sale, use or other dealings in this Software without prior written authorization.