R3E.Compiler.CSharp.Tool 0.0.4

dotnet tool install --global R3E.Compiler.CSharp.Tool --version 0.0.4
                    
This package contains a .NET tool you can call from the shell/command line.
dotnet new tool-manifest
                    
if you are setting up this repo
dotnet tool install --local R3E.Compiler.CSharp.Tool --version 0.0.4
                    
This package contains a .NET tool you can call from the shell/command line.
#tool dotnet:?package=R3E.Compiler.CSharp.Tool&version=0.0.4
                    
nuke :add-package R3E.Compiler.CSharp.Tool --version 0.0.4
                    

R3E.Compiler.CSharp.Tool

Neo Smart Contract Compiler CLI Tool (r3e neo contract compiler) - Command-line interface for compiling Neo smart contracts.

Installation

Install as a global .NET tool:

dotnet tool install -g R3E.Compiler.CSharp.Tool

Update to the latest version:

dotnet tool update -g R3E.Compiler.CSharp.Tool

Usage

Once installed, the rncc command will be available globally.

Basic Usage

Compile a C# project:

rncc MyContract.csproj

Compile source files:

rncc Contract1.cs Contract2.cs

Options

rncc [paths] [options]

Arguments:
  paths                           The path of the solution file, project file, project directory or source files.

Options:
  -o, --output <output>           Specifies the output directory.
  --base-name <base-name>         Specifies the base name of the output files.
  --nullable <nullable>           Represents the default state of nullable analysis. [default: Annotations]
  --checked                       Indicates whether to check for overflow and underflow.
  --assembly                      Indicates whether to generate assembly.
  --generate-artifacts <kind>     Instruct the compiler how to generate artifacts.
  --security-analysis             Whether to perform security analysis.
  --generate-interface            Generate interface file for contracts.
  --generate-plugin               Generate plugin from contract.
  --inline                        Inline methods. [default: True]
  --verbose                       Outputs additional information.
  -d, --debug <None|Portable>     Debug type. [default: None]
  --optimize <optimize>           Optimize output. [default: Basic]
  --version                       Show version information.
  -?, -h, --help                  Show help and usage information.

Examples

Compile with debug information:

rncc MyContract.csproj -d Portable

Compile with optimization:

rncc MyContract.csproj --optimize All

Generate contract interface:

rncc MyContract.csproj --generate-interface

Generate plugin from contract:

rncc MyContract.csproj --generate-plugin

Run security analysis:

rncc MyContract.csproj --security-analysis

Compile to specific output directory:

rncc MyContract.csproj -o ./build

Output Files

The compiler generates:

  • .nef - Neo Executable Format file
  • .manifest.json - Contract manifest
  • .nefdbgnfo - Debug information (when -d is used)
  • .abi.json - ABI definition
  • Interface files (when --generate-interface is used)
  • Plugin files (when --generate-plugin is used)

For Library Usage

If you need to integrate the compiler into your own tools or applications, use the R3E.Compiler.CSharp NuGet package instead.

License

MIT License - see LICENSE file for details.

Product Compatible and additional computed target framework versions.
.NET net9.0 is compatible.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

Version Downloads Last Updated
0.0.4 130 7/14/2025
0.0.1 128 7/13/2025