🐧Building on Linux

How to build on Linux

To build NuGlobal on Linux, you must be running a supported distro.

Ubuntu 22.04 LTS Jammy Jellyfish users or later can directly download .NET 6.0 SDK and .NET 7.0 SDK from the official Ubuntu repositories without having to import the Microsoft's repositories.

Trying to build this project on an ARM64 Android device (e.g. Android devices with Qualcomm Snapdragon 8 Gen 2 as SoC) with Termux emits two error messages. The first one is:

$ dotnet build
GC heap initialization failed with error 0x8007000E
Failed to create CoreCLR, HRESULT: 0x8007000E

and the second one is:

$ DOTNET_GCHeapHardLimit=1C0000000 dotnet build
(...)
error MSB6006: "csc.dll" exited with code 139.
Build FAILED.

In order to fix the first message, append the below environment variable before each dotnet build command like this:

$ DOTNET_GCHeapHardLimit=1C0000000 dotnet build

However, to fix the second message, download the fixed version of proot using this link (mirror if down) and run these commands outside the Ubuntu proot-distro environment:

# dpkg -i proot_5.1.107-50_aarch64.deb
# apt-mark hold proot

Using the command-line

If you are a hardcore command-line user or if you prefer using the command-line, follow these steps to build RuntimeTrim right from the command line:

  1. Open your terminal emulator on your work directory

  2. Execute git clone https://github.com/Aptivi/RuntimeTrim.git

  3. Navigate to the cloned repository, RuntimeTrim

  4. Execute dotnet restore and dotnet build

  5. After building is done, run dotnet run RuntimeTrim/RuntimeTrim.csproj

Last updated