Project Description
GoNative helps you convert your managed C# to native C/C++.

C#/.NET/VS is a great language and environment to work in, and GoNative enables you to commit to it without worry of portability or performance.

GoNative is
  • a tool that converts C# to C/C++ and
  • a library that enables the generated C/C++ to execute.

Current status: Early Alpha (6/2009)

Working with the Code

The GoNative solution file (GoNative.sln) contains 4 projects:

1. 'GoNative'
This translates C# to C++.
The first command-line parameter should be the name of the SLN file of the C# project you want to convert.

2. 'Test-001'
This is a C# console application.
When run, it will report 1 failure, which will be corrected by 'GoNative' when it is converted to C++.

3. 'Test-001-native'
This is the C++ version of the 'Test-001' C# console app that is created by 'GoNative'.
It links with 'GoNativeLib'.

4. 'GoNativeLib'
This is the library that enables the generated C++ to execute properly.

If your C# .NET application uses functionality that is not yet implemented in 'GoNativeLib' it will
manifest as a compile-time or link-time error. You can implement the functionality in the 'GoNativeLib'
header or source files and then recompile. When it works, please submit it as a patch to the
'GoNativeLib' following the steps listed at the top of the GoNative source files.

Last edited Jun 20, 2009 at 7:54 AM by JasonNottingham, version 6