CppSharp 1.0.1

.NET Core 3.1
Install-Package CppSharp -Version 1.0.1
dotnet add package CppSharp --version 1.0.1
<PackageReference Include="CppSharp" Version="1.0.1" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add CppSharp --version 1.0.1
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: CppSharp, 1.0.1"
#r directive can be used in F# Interactive, C# scripting and .NET Interactive. Copy this into the interactive tool or source code of the script to reference the package.
// Install CppSharp as a Cake Addin
#addin nuget:?package=CppSharp&version=1.0.1

// Install CppSharp as a Cake Tool
#tool nuget:?package=CppSharp&version=1.0.1
The NuGet Team does not provide support for this client. Please contact its maintainers for support.

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.

Product Versions
.NET net5.0 net5.0-windows net6.0 net6.0-android net6.0-ios net6.0-maccatalyst net6.0-macos net6.0-tvos net6.0-windows
.NET Core netcoreapp3.1
Compatible target framework(s)
Additional computed target framework(s)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on CppSharp:

Package Downloads
Spout.NET

Spout.NET is a C# .NET Implementation for Spout2, A video frame sharing system.

GitHub repositories (3)

Showing the top 3 popular GitHub repositories that depend on CppSharp:

Repository Stars
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
allisterb/jemalloc.NET
A native memory manager for .NET
Version Downloads Last updated
1.0.1 9,918 12/30/2021
1.0.0 4,661 10/12/2021
0.11.2 10,327 2/4/2021
0.11.1 433 2/3/2021
0.11.0 511 1/29/2021
0.10.5 12,949 6/27/2020
0.10.4 743 5/23/2020
0.10.3 2,594 4/9/2020
0.10.2 4,224 3/28/2020
0.10.1 5,533 7/4/2019
0.10.0 955 6/25/2019
0.9.2 1,129 5/7/2019
0.9.1 808 4/13/2019
0.9.0 6,338 3/1/2019
0.8.23 935 1/31/2019
0.8.22 2,749 9/24/2018
0.8.21 1,483 8/1/2018
0.8.20 1,367 5/25/2018
0.8.19 1,858 2/4/2018
0.8.18 1,874 1/27/2018
0.8.17 1,243 12/25/2017
0.8.16 1,341 11/10/2017
0.8.15 907 11/7/2017
0.8.14 2,279 9/17/2017
0.8.13 1,353 7/18/2017
0.8.12 907 7/18/2017
0.8.11 1,634 6/4/2017
0.8.10 1,362 4/23/2017
0.8.9 1,003 4/16/2017
0.8.8 929 4/9/2017
0.8.7 1,106 3/27/2017
0.8.6 1,235 3/4/2017
0.8.5 971 3/4/2017
0.8.4 1,773 2/10/2017
0.8.3 963 2/5/2017
0.8.2 965 1/25/2017
0.8.1 899 1/22/2017
0.8.0 914 1/22/2017
0.7.13 955 1/16/2017
0.7.12 1,260 11/17/2016
0.7.11 889 11/13/2016
0.7.10 858 11/11/2016
0.7.9 1,097 11/2/2016
0.7.8 915 11/1/2016
0.7.7 1,054 11/1/2016
0.7.6 915 10/28/2016
0.7.5 891 10/27/2016
0.7.4 877 10/25/2016
0.7.3 949 10/1/2016
0.7.2 1,212 9/17/2016
0.7.1 897 9/13/2016
0.7.0 855 9/12/2016
0.6.0 947 6/24/2016
0.5.2 978 6/17/2016
0.5.1 887 6/17/2016
0.5.0 1,089 6/14/2016

- Generate valid C# for independent specialisations with nested fields

- Don't revisit parameters when checking to ignore

- Generate valid C# for templates with external specializations only

- Drop CI with windows 32-bit because of premake

- Generate valid C# for nested in external specializations

- Generate valid C# for independent external specializations

- Generate valid C# for nested external specializations

- Generate valid C# for unresolvable base templates

- Generate valid C# for classes with dependent fields nested in templates with independent fields

- Generate valid C++ for redeclaration of friends

- Generate valid C++ for specialisations with void

- Generate valid C# for pure functions returning or taking dependent pointers

- Fix a crash when processing templates with variable arguments (#1641)

- Report errors when linking of generated C++ fails

- Ensure complete classes in class templates

- Print C++ for some kinds of non-type template parameters

- Always ignore functions returning unsupported specializations

- Generate valid C# for unions in templates with non-type args

- Fix a test for the new msvc in vs 2022

- Match names of parameters in templates to their specializations

- Work around adding an STD name-space to a custom header

- Generate valid C# for fields with types system template specializations

- Generate valid C# for variables which use float

- Generate valid C# for variables with > 1 arg

- Generate valid C++ for variadic functions

- Fix C# layouts for classes with nameless unions

- Generate valid C# for copy ctors with extra args

- Generate valid C# for destructors of templates with dependent fields

- Don't generate or move ignored specializations

- Rename templates only used through aliases

- Generate valid C# for internal fields of type external specialization

- Generate valid C# for static object-typed fields

- Trim specializations only used in ignored types

- Instantiate specialized classes nested in templates

- Generate valid C++ for protected inline functions

- Generate valid C++ for parameters by value

- Generate valid C++ for conversion operators in name-spaced classes