Is there any virtual tool for C ++?

I found a problem with the test environment in a C ++ problem.

We have a machine that downloads code from a version control system and builds it and performs a unit test, nothing new.

The problem arises when we add a new dependency to our project. At the same time, we are developing many functions, and this is something relatively common. We do this, we must advise the testers and give them an easy way to reproduce the compilation environment ...

And I was thinking if there is any other easy way to get through this ... I don’t know, some kind of tool like virtualenv or buildout for python ..

I searched google but no luck.

Any help would be appreciated.

+6
source share
2 answers

You can always add all the dependencies to the version control system and provide automatic scripts that will install the necessary subsystems. Where I work, if you just download the current version from the repository, you can create a one-step ISO image that can be installed by testers on any computer that they need. The image contains everything from the OS to the application.

Depending on the specific situation, you can start with smaller steps, such as adding dependencies to the repository and having testers there, regardless of whether a new file appears or appears.

+1
source

There is no off-the-shelf tool, AFAIK, except perhaps for CMake , which can handle such things for you.

For C ++, it is fairly easy to manage manually, since you can set the LIB, LIBPATH, and PATH environment variables in carefully selected directories. No site.py, eggs, .pth files, etc. Like with Python.

We do this in our store, carefully configure our development / development environment and have everything that is needed for version control (mostly scripts that download huge ZIP files from pre-created libraries and unpack them to the right places).

Small libraries are copied to shared directories, more get their own entry in env-vars.

This works well for Python and Java. Have not tried other languages ​​... yet. :)

0
source

Source: https://habr.com/ru/post/896141/


All Articles