CppSharp 0.10.4
See the version list below for details.
dotnet add package CppSharp --version 0.10.4
NuGet\Install-Package CppSharp -Version 0.10.4
<PackageReference Include="CppSharp" Version="0.10.4"> <PrivateAssets>all</PrivateAssets> <IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets> </PackageReference>
paket add CppSharp --version 0.10.4
#r "nuget: CppSharp, 0.10.4"
// Install CppSharp as a Cake Addin #addin nuget:?package=CppSharp&version=0.10.4 // Install CppSharp as a Cake Tool #tool nuget:?package=CppSharp&version=0.10.4
CppSharp is a tool and set of libraries which allows programmers to use C/C++ libraries with high-level programming languages (such as C#).
It is a tool that takes C/C++ header and library files and generates the necessary glue to surface the native API as a managed API. Such an API can be used to consume an existing native library in your high-level code or add scripting support to a native codebase.
The supported target languages at present are C# and C++/CLI.
It can also be used as a library to parse native code into a syntax tree with a rich declaration and type information model.
The NuGet version is Windows 64-bit only for the time being. Binary 32-bit releases for Windows can be found at https://github.com/mono/CppSharp/releases .
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET Framework | net is compatible. |
-
- Baseclass.Contrib.Nuget.Output (>= 2.4.3)
NuGet packages (2)
Showing the top 2 NuGet packages that depend on CppSharp:
Package | Downloads |
---|---|
Spout.NET
Spout.NET is a C# .NET Implementation for Spout2, A video frame sharing system. |
|
BindingGenerator
CppSharp based binding generator for dotnet |
GitHub repositories (7)
Showing the top 5 popular GitHub repositories that depend on CppSharp:
Repository | Stars |
---|---|
tooll3/t3
Tooll 3 is an open source software to create realtime motion graphics.
|
|
Ruslan-B/FFmpeg.AutoGen
FFmpeg auto generated unsafe bindings for C#/.NET and Core (Linux, MacOS and Mono).
|
|
ddobrev/QtSharp
Mono/.NET bindings for Qt
|
|
sdcb/OpenVINO.NET
High quality .NET wrapper for OpenVINO™ toolkit.
|
|
sdcb/Sdcb.FFmpeg
FFmpeg basic .NET API generated by CppSharp
|
Version | Downloads | Last updated | |
---|---|---|---|
1.1.5.3168 | 41,008 | 10/18/2023 | |
1.1.1.10805 | 7,648 | 10/18/2023 | |
1.0.76.8341 | 8,578 | 10/18/2023 | |
1.0.54.626 | 21,279 | 5/31/2023 | |
1.0.45.22293 | 24,389 | 2/6/2023 | |
1.0.1 | 56,334 | 12/30/2021 | |
1.0.0 | 18,077 | 10/12/2021 | |
0.11.2 | 20,624 | 2/4/2021 | |
0.11.1 | 9,219 | 2/3/2021 | |
0.11.0 | 9,411 | 1/29/2021 | |
0.10.5 | 28,802 | 6/27/2020 | |
0.10.4 | 2,355 | 5/23/2020 | |
0.10.3 | 4,558 | 4/9/2020 | |
0.10.2 | 5,902 | 3/28/2020 | |
0.10.1 | 7,603 | 7/4/2019 | |
0.10.0 | 2,904 | 6/25/2019 | |
0.9.2 | 2,767 | 5/7/2019 | |
0.9.1 | 2,383 | 4/13/2019 | |
0.9.0 | 7,931 | 3/1/2019 | |
0.8.23 | 2,666 | 1/31/2019 | |
0.8.22 | 4,455 | 9/24/2018 | |
0.8.21 | 3,203 | 8/1/2018 | |
0.8.20 | 3,052 | 5/25/2018 | |
0.8.19 | 3,498 | 2/4/2018 | |
0.8.18 | 3,564 | 1/27/2018 | |
0.8.17 | 2,955 | 12/25/2017 | |
0.8.16 | 3,130 | 11/10/2017 | |
0.8.15 | 2,547 | 11/7/2017 | |
0.8.14 | 4,172 | 9/17/2017 | |
0.8.13 | 2,945 | 7/18/2017 | |
0.8.12 | 2,503 | 7/18/2017 | |
0.8.11 | 3,261 | 6/4/2017 | |
0.8.10 | 2,972 | 4/23/2017 | |
0.8.9 | 2,554 | 4/16/2017 | |
0.8.8 | 2,477 | 4/9/2017 | |
0.8.7 | 2,691 | 3/27/2017 | |
0.8.6 | 2,862 | 3/4/2017 | |
0.8.5 | 2,535 | 3/4/2017 | |
0.8.4 | 3,418 | 2/10/2017 | |
0.8.3 | 2,625 | 2/5/2017 | |
0.8.2 | 2,612 | 1/25/2017 | |
0.8.1 | 2,573 | 1/22/2017 | |
0.8.0 | 2,360 | 1/22/2017 | |
0.7.13 | 2,551 | 1/16/2017 | |
0.7.12 | 2,828 | 11/17/2016 | |
0.7.11 | 2,472 | 11/13/2016 | |
0.7.10 | 2,394 | 11/11/2016 | |
0.7.9 | 2,565 | 11/2/2016 | |
0.7.8 | 2,416 | 11/1/2016 | |
0.7.7 | 2,649 | 11/1/2016 | |
0.7.6 | 2,541 | 10/28/2016 | |
0.7.5 | 2,435 | 10/27/2016 | |
0.7.4 | 2,484 | 10/25/2016 | |
0.7.3 | 2,479 | 10/1/2016 | |
0.7.2 | 2,756 | 9/17/2016 | |
0.7.1 | 2,440 | 9/13/2016 | |
0.7.0 | 2,399 | 9/12/2016 | |
0.6.0 | 2,379 | 6/24/2016 | |
0.5.2 | 2,402 | 6/17/2016 | |
0.5.1 | 2,324 | 6/17/2016 | |
0.5.0 | 2,502 | 6/14/2016 |
* Simplify the required headers for macOS bindings
* Option to allow caller to specify it does not want unchanged output files to be modified. This supports incremental build in VS. (#1373) - Ali Alamiri <ali.alamiri@sage.com>
* CreateInstance factory overload to pass flag informing wrapper if it should own the native pointer passed to it. - Ali Alamiri <ali.alamiri@sage.com>
* force bash use to avoid `./premake5-linux: 3: ./premake5-linux: Bad substitution` error if other default shell in the system - Lorenzo Delana <lorenzo.delana@gmail.com>
* Made the original virtual tables static too
* Pass native pointers to bases in the generated C#
* Check type maps when printing C++ for pointers
* Do not add type alias templates twice to the AST
* Fix all leaks of memory in the old expressions
* Add template functions to their context
* Fix leaking memory by removing a useless assignment
* Fix leaking the memory of an entire Clang AST
* Ignore type maps when printing C++ for symbols
* Implement more accurate managed type printing in C++ type printer.
* Use a native type printer context when looking for type maps in CSharpSourcesExtensions.DisableTypeMap.
* Use explicit type printer when printing types in C# GenerateMethodSpecifier.
* Refactor CodeGenerator.GenerateMethodSpecifier to allow explicit specifier kind.
* Do not check declaration access for explicitly generated declarations.
* Fix TranslationUnit.FileRelativeDirectory to be more robust against null include paths.
* Fix formatting to of Declaration.GenerationKind to ease debugging.
* Ignore implicitly deleted copy constructor methods.
* Correctly marshal constant arrays in C++/CLI (#1346)
* Marshal pointer to primitive typedefs in C++/CLI (#1355) - Ali Alamiri <ali.alamiri@sage.com>
* Fix a regression when renaming classes
* Fix naming conflicts with nested types and members
* publish the clang lib folder - Ali Alamiri <ali.alamiri@sage.com>
* Implement basic support for parsing function-like macros.
* Implement TranslationUnit.ToString() to help with debugging.
* Add debug option and flags to the Premake build and compile scripts.
* Generate valid C# for parameters typedef-ed to mapped types
* Update the version of Mono used for builds (CI)
* Fix the regressed C# marshalling of char*
* Handle pointer to pointer param (#1343) - Ali Alamiri <ali.alamiri@sage.com>
* Handle returned pointers to std::vector in C++/CLI - Ali Alamiri <ali.alamiri@sage.com>
* Implement abstract templates to call virtuals
* Correctly align printed information for debugging
* Set the render kind of inline command comments
* Fix all memory leaks in tests
* Generate by ref parameters of type a pointer to enum
* Use UnsupportedType description for type name instead of empty string (#1339) - Ali Alamiri <ali.alamiri@sage.com>