From 8faa8c86e08092c15d250a6f18a58ccbb27f68f2 Mon Sep 17 00:00:00 2001 From: gcontini <1121667+gcontini@users.noreply.github.com> Date: 周日, 01 9月 2019 18:50:18 +0800 Subject: [PATCH] Merge branch 'master' of https://github.com/open-license-manager/open-license-manager.git --- README.md | 99 ++++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 89 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index 0239917..e522a78 100644 --- a/README.md +++ b/README.md @@ -1,14 +1,93 @@ -license-manager-cpp -=================== +# Open License Manager + -A lincense manager written in C++ +A license manager written in C/C++ for Windows and Linux environments. -Linux -=================== +It allows to protect the software you develop from unauthorized copies, +limit the usage in time, to a specific set of machines, or prevent the usage in +virtualized environments. It is an Open License Manager that helps to keep your +software closed ;-) -apt-get install libcrypto++dev (version 5.6.1) -libboost-dev libboost-filesystem-dev -libboost-program-options-dev libboost-test-dev libboost-date-time-dev -libssl-dev? +The software is made by 2 main sub-components: + * a C library with no (or minimal) external dependencies (the part you have to integrate in your software). + * a license generator written in C++ (allows you to generate a license). + +these modules are planned.... + * a license [backoffice](../../issues/7) in php (in order to handle multiple licenses). + * a license debugger to be sent to the final customer when there are licensing problems. + * a [log descriptor](../../issues/8) in order to decrypt logs generated by the license system. -openssl genrsa -out src/license-generator/privkey.pem 2048 \ No newline at end of file +You can notice 2 more sub-projects: + * bootstrap: allows to generate private keys and modify the library on the fly after the downloading. + * testing : runs the tests (and publish the results on cdash) + +Licensing +===================== +The project comes out with a very large freedom of use for everyone (and it will always be). +It uses a BSD 3 clauses licensing schema. + +How to build +============ + +## prerequisites +GCC (Linux), MINGW or MSVC (Windows) +cmake, boost, openssl (Linux/MINGW), you can find detailed instruction for each [supported environment](https://github.com/open-license-manager/open-license-manager/wiki/Build-the-library) in the wiki. Below an overview of the basic build procedure: + +``` +git clone https://github.com/open-license-manager/open-license-manager.git +cd open-license-manager/ +mkdir build +cd build +``` + +## on Linux +``` +cmake .. -DCMAKE_INSTALL_PREFIX=../install +make +make install +``` + +## on Windows (with MSVC 2015) +``` +cmake .. -G "Visual Studio 14 2015 Win64" -DCMAKE_INSTALL_PREFIX=../install +cmake --build . --target install --config Release +``` + +## cross compile with MINGW on Linux +``` +x86_64-w64-mingw32.static-cmake .. -DCMAKE_INSTALL_PREFIX=../install +make +make install +``` + +How to test +=========== + +## on Linux +``` +make test +``` + +## on Windows (MSVC) +``` +ctest -C Release +``` + +How to use +========== + +This simple example shows how to integrate open-licence-manager into your project + +``` +$ cd example +$ cmake . +$ make +$ ./example +license ERROR : + license file not found +the pc signature is : + Jaaa-aaaa-MG9F-ZhBB +$ ../install/bin/license_generator example -s Jaaa-aaaa-MG9F-ZhBB -o example.lic +$ ./example +licence OK +``` -- Gitblit v1.9.1