-
Notifications
You must be signed in to change notification settings - Fork 321
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
generating projects with lccgen #139
Comments
I have this problem too, can anyone answer? |
same here ! Project is still live ? |
[edited because formatting was garbled by github]
I am not sure about the latest version but here are my notes when I
evaluated open-license-manager. I don't guarantee that it will work for you
because I did not follow recent developments and I don't know the internal
details of open-license-manager.
The documentation of open-license-manager
<https://open-license-manager.github.io/licensecc/usage/issue-licenses.html>
suggests to have the executable lcc in your path and organize the project
as follows:
```
projects
└── DEFAULT #(your project name)
├── include
│ └── licensecc
│ └── DEFAULT
│ ├── licensecc_properties.h
│ └── public_key.h
├── licenses
│ └── test.lic
└── private_key.rsa
```
Here, DEFAULT is the project name and would be replaced by MYPROJECT, for
example.
The idea is that each project has its settings and licenses. In addition to
DEFAULT (which is used for internal tests of open-license-manager), a new
project can be added by reconfiguring cmake with the following additional
variable -DLCC_PROJECT_NAME=xxx.
When I did so for MYPROJECT , I ended up with the following directory
structure:
```
.
├── DEFAULT
│ ├── include
│ │ └── licensecc
│ │ └── DEFAULT
│ │ ├── licensecc_properties.h
│ │ └── public_key.h
│ └── private_key.rsa
└── MYPROJECT
├── include
│ └── licensecc
│ └── MYPROJECT
│ ├── licensecc_properties.h
│ └── public_key.h
└── private_key.rsa
```
Also, lccgen can be used to generate the project (in fact this is how the
cmake configuration does it). When I tested this, the same directory
structure was generated, but for some reason the file licensecc_properties.h
is not created.
From the above structure we see that the build process generated both the
public and the private key, by using openssl.
For a start, it can be sufficient to remove the public and private key when
rebuilding the project, and this will regenerate both keys.
After compiling the library (cmake --build . --target install --config
Release), the structure of the install directory is as follows:
```
.
├── bin
│ ├── lccgen
│ └── MYPROJECT
│ └── lccinspector
├── include
│ └── licensecc
│ ├── datatypes.h
│ ├── licensecc.h
│ └── MYPROJECT
│ ├── licensecc_properties.h
│ └── public_key.h
└── lib
├── cmake
│ ├── lccgen
│ │ ├── lccgen-config.cmake
│ │ ├── license_generator.cmake
│ │ └── license_generator-release.cmake
│ └── licensecc
│ ├── licensecc-config.cmake
│ └── licensecc-config-version.cmake
└── licensecc
└── MYPROJECT
├── cmake
│ ├── licensecc.cmake
│ └── licensecc-release.cmake
└── liblicensecc_static.a
```
There is a global lccgen executable, which is common for all projects, and
then a lccinspector specific for each project. I suppose that this is
because the hardware identifier strategy is specific for each project, and
other variables as well.
Also, the include directory from each project's directory is copied as to
the installation include directory, and a static library is generated for
each project. Finally, some .cmake files are added for each project,
probably to facilitate integration if you know how to use it.
|
This video may help https://youtu.be/BHb-p-4aaZE?si=_UehJQVSmzQA6fwl |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
I'm trying to use licgen to create a new project , but I'm not sure how to use it
If I'm first trying that:
lccgen project init -n POM
nothing is happening (no text , even with verbose option)
Do I have to provide a rsa private key (link to .rsa files ? or the keys content in the command line ?)
lccgen project init --primary-key pom_private_key.rsa --public-key pom_public_key.rsa --project-name POM
return nothing :-/
The text was updated successfully, but these errors were encountered: