Reproc

From Free Software Directory
Jump to: navigation, search


[edit]

reproc

https://github.com/DaanDeMeyer/reproc
A cross-platform (C99/C++11) process library

What is reproc?

reproc (Redirected Process) is a cross-platform C/C++ library that simplifies starting, stopping and communicating with external programs. The main use case is executing command line applications directly from C or C++ code and retrieving their output.

reproc consists out of two libraries: reproc and reproc++. reproc is a C99 library that contains the actual code for working with external programs. reproc++ depends on reproc and adapts its API to an idiomatic C++11 API. It also adds a few extras that simplify working with external programs from C++.

Features

Start any program directly from C or C++ code. Communicate with a program via its standard streams. Wait for a program to exit or forcefully stop it yourself. When forcefully stopping a process you can either allow the process to clean up its resources or stop it immediately. The core library (reproc) is written in C99. An optional C++11 wrapper library (reproc++) with extra features is available for use in C++ applications. Multiple installation methods. Either build reproc as part of your project or use a system installed version of reproc.





Licensing

License

Verified by

Verified on

Notes

License

MIT

Verified by

Craig Topham, Mertgor

Verified on

21 August 2020




Leaders and contributors

Contact(s)Role
Daan De Meyer Copyright Holder


Resources and communication

AudienceResource typeURI
Changeloghttps://github.com/DaanDeMeyer/reproc/blob/main/CHANGELOG.md
Bug Trackinghttps://github.com/DaanDeMeyer/reproc/issues
gitter channelSupporthttps://gitter.im/reproc/Lobby
VCS Repository Webviewhttps://github.com/DaanDeMeyer/reproc


Software prerequisites

KindDescription
Source requirementC++
Source requirementC




Entry








"Copyright Holder" is not in the list (Maintainer, Contributor, Developer, Sponsor, Unknown) of allowed values for the "Role" property.












Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the page “GNU Free Documentation License”.

The copyright and license notices on this page only apply to the text on this page. Any software or copyright-licenses or other similar notices described in this text has its own copyright notice and license, which can usually be found in the distribution or license text itself.