{"id":18322703,"url":"https://github.com/labs64/netlicensingclient-cpp","last_synced_at":"2025-04-05T23:31:05.611Z","repository":{"id":48557001,"uuid":"49488287","full_name":"Labs64/NetLicensingClient-cpp","owner":"Labs64","description":"C++ wrapper for Labs64 NetLicensing RESTful API","archived":false,"fork":false,"pushed_at":"2024-10-31T10:39:07.000Z","size":247,"stargazers_count":10,"open_issues_count":2,"forks_count":5,"subscribers_count":6,"default_branch":"master","last_synced_at":"2025-03-21T13:23:20.198Z","etag":null,"topics":["activation","hacktoberfest","labs64","license","license-management","licensing","netlicensing","wrapper"],"latest_commit_sha":null,"homepage":"https://netlicensing.io","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Labs64.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-01-12T09:11:13.000Z","updated_at":"2024-10-31T10:39:11.000Z","dependencies_parsed_at":"2024-09-22T02:15:15.362Z","dependency_job_id":null,"html_url":"https://github.com/Labs64/NetLicensingClient-cpp","commit_stats":null,"previous_names":[],"tags_count":8,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Labs64%2FNetLicensingClient-cpp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Labs64%2FNetLicensingClient-cpp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Labs64%2FNetLicensingClient-cpp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Labs64%2FNetLicensingClient-cpp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Labs64","download_url":"https://codeload.github.com/Labs64/NetLicensingClient-cpp/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247415783,"owners_count":20935383,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["activation","hacktoberfest","labs64","license","license-management","licensing","netlicensing","wrapper"],"created_at":"2024-11-05T18:25:39.765Z","updated_at":"2025-04-05T23:31:04.176Z","avatar_url":"https://github.com/Labs64.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ca href=\"https://netlicensing.io\"\u003e\u003cimg src=\"https://netlicensing.io/img/netlicensing-stage-twitter.jpg\" alt=\"Innovative License Management Solution\"\u003e\u003c/a\u003e\n\n# [Labs64 NetLicensing](https://netlicensing.io) Client (C++)\n\n[![Build Status](https://github.com/Labs64/NetLicensingClient-cpp/actions/workflows/netlicesning-client-ci.yml/badge.svg?branch=master)](https://github.com/Labs64/NetLicensingClient-cpp/actions/workflows/netlicesning-client-ci.yml)\n[![Apache License 2.0](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://github.com/Labs64/NetLicensingClient-cpp/blob/master/LICENSE)\n[![📖 Documentation](https://img.shields.io/badge/📖%20Documentation-Wiki-AB6543.svg)](https://netlicensing.io/wiki/restful-api)\n[![NetLicensing @ LinkedIn](https://img.shields.io/badge/NetLicensing-0077B5.svg?logo=LinkedIn)](https://www.linkedin.com/showcase/netlicensing)\n\nC++ wrapper for Labs64 NetLicensing [RESTful API](https://netlicensing.io/wiki/restful-api)\n\nVisit Labs64 NetLicensing at https://netlicensing.io\n\n## Dependencies\n1. C++11 toolset + STL\n2. cmake\n3. [libcurl](https://github.com/curl/curl) (with libcurl's transitive dependencies)\n4. [jsoncpp](https://github.com/open-source-parsers/jsoncpp) (included)\n5. [boost](https://www.boost.org/) (optional, needed for unit tests)\n\n\n## Compatibility\n\n### Notes:\n- Building **NetLicensing C++ client library** with static linking is currently not supported, feel free to contribute.\n- Builds verified with **libcurl** version 7.64.0 and **cmake** version 3.13.4.\n\n### Verified builds:\n\nPlatform | Build toolset\n------------ | -------------\nWindows 7 | Visual studio 14 2015 x86 - x64\nWindows 7 | Visual studio 15 2017 x86 - x64\nWindows 10 | Visual studio 14 2015 x86 - x64\nWindows 10 | Visual studio 15 2017 x86 - x64\nmacOS Mojave | Xcode 10.1\n\n\n## Windows build\n\n### Build curl\n1. Download \u003cb\u003ecurl\u003c/b\u003e from https://github.com/curl/curl/releases\n2. `cd curl_directory\\winbuild`\n3. Read `BUILD_WINDOWS.txt` for building instructions\n4. In **VC command prompt** execute:\n   ```\n   nmake /f Makefile.vc VC=15 MACHINE=x64 ENABLE_WINSSL=yes MODE=dll\n   ```\n   (replace `VC` and `MACHINE` with your actual version / platform)\n5. If you get the error `U1073` or `U1077` - execute `curl_directory\\buildconf.bat` first and repeat the `nmake` command\n6. Your `curl` build directory will be in sub directory `builds\\`\n\n### Build NetLicensing C++ client\n1. Download the latest release and unpack to `NetLicensingClient-cpp` (or checkout [master](https://github.com/Labs64/NetLicensingClient-cpp.git) to build the latest development version)\n2. In the `NetLicensingClient-cpp` directory create `build\\` subdirectory\n3. Specify **curl** location using `CMAKE_PREFIX_PATH=your_curl_build_directory`. **curl** build directory must contain `bin`, `include`, and `lib` subdirs.\n4. In **VC command prompt** execute:\n   ```\n    cd NetLicensingClient-cpp\\build\n    cmake .. -G \"Visual Studio 15 2017 Win64\" -DCMAKE_PREFIX_PATH=your_curl_build_directory\n   ```\n   (replace `-G` argument with your actual version / platform, see [`cmake` documentation](https://cmake.org/cmake/help/latest/))\n5. Open solution created in `NetLicensingClient-cpp\\build` directory in Visual Studio and build the library and demo client.\n\n\n## Linux build\n\n### Build NetLincesing-cpp\n1. Download the latest release and unpack to `NetLicensingClient-cpp` (or checkout [master](https://github.com/Labs64/NetLicensingClient-cpp.git) to build the latest development version)\n2. Install **libcurl** (for development, including C headers and libraries). E.g. in **Ubuntu**:\n    ```sudo apt-get install libcurl4-openssl-dev```\n3. Install **boost**: ```sudo apt-get install libboost-all-dev```\n3. In the `NetLicensingClient-cpp` directory create `build/` subdirectory\n4. Execute:\n   ```\n    cd NetLicensingClient-cpp/build\n    cmake ..\n    make\n   ```\n\n### Unit tests\n\nUnit tests require [**Boost**](https://www.boost.org) Unit Test Framework. To build project with the unit tests activated add cmake option `-DBUILD_TESTS=yes`. The tests must be executed from `tests/` subdirectory on Linux or `tests\\Debug\\` on Windows in order to properly locate the JSON files with test data.\n\n\n## Linux build using docker\n\n_TODO: full description_\n\n1. Prepare container\n   - Image: ubuntu:22.04\n   - apt-get update\n   - apt-get install cmake g++ libcurl4-openssl-dev libboost-all-dev\n\n2. Map `NetLicensingClient-cpp` or clone it inside the container\n\n3. Build as described in [Linux Build](#linux-build)\n\n\n## MacOS build\n\n_TODO: full description_\n\n1. Prepare environment:\n   - Install XCode 10.1+\n   - Install `homebrew`\n   - `libcurl` is provided\n   - `brew install cmake boost`\n\n2. Build as described in [Linux Build](#linux-build)\n\n\n## Execution environment\n\n**libcurl** dynamic library should be either installed system-wide or otherwise available for the loading at run-time (typically located in the same directory as your executable)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flabs64%2Fnetlicensingclient-cpp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flabs64%2Fnetlicensingclient-cpp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flabs64%2Fnetlicensingclient-cpp/lists"}