-
Notifications
You must be signed in to change notification settings - Fork 1
dev_build_docs
Francisco Dias edited this page Apr 9, 2026
·
5 revisions
extgen is a C#/.NET console tool. The only build dependency is the .NET 9 SDK.
-
.NET SDK 9.x
dotnet --version
From the repository root:
dotnet restore
dotnet build -c Releasedotnet run -c Release -- --helpdotnet run -c Release -- --config ./config.jsonPublishing creates a distributable output folder under ./publish.
dotnet publish -c Release -r win-x64 --self-contained true -o ./publish/win-x64dotnet publish -c Release -r osx-arm64 --self-contained true -o ./publish/osx-arm64dotnet publish -c Release -r osx-x64 --self-contained true -o ./publish/osx-x64dotnet publish -c Release -r linux-x64 --self-contained true -o ./publish/linux-x64Note
Set --self-contained false if you prefer a smaller output and are comfortable requiring users to install .NET 9.
After building or publishing:
extgen --help
extgen --init ./test_projectconfig.json and extgen.schema.json should appear in the target folder.
- Visual Studio 2022 or newer
- .NET 9 SDK
- Workload: .NET desktop development
- Open
extgen.slnin Visual Studio. - Select Release (or Debug) and Any CPU.
- Build via Build → Build Solution or Ctrl+Shift+B.
Output appears under bin/Release/net9.0/.
To run from Visual Studio: set extgen as the startup project and add command-line arguments under Project → Properties → Debug.
- VS Code
- .NET 9 SDK
- Extension: C# Dev Kit (recommended)
- Open the repository folder in VS Code.
- Open a terminal and run:
dotnet restore
dotnet build -c ReleaseTo run:
dotnet run -- --helpSet a breakpoint in Program.cs and press F5. VS Code generates .vscode/launch.json on first run. Pass arguments by editing the args field:
"args": ["--config", "./config.json"]- The same project builds on Windows, macOS, and Linux.
- Console SDKs are not required to build extgen itself - only to build the CMake projects that extgen generates.
GameMaker 2026