User Tools

Site Tools

한국어

cfnet:runtime_environment

Setting up a Runtime Environment

Typically, a software program will be developed and debugged on one PC, and then deployed to another. By setting up a development environment, the development PC will have everything it needs to run the application, as installing the development tools also installs the runtime components. However, before a an application can be deployed and run on a target machine, that typically would not have development tools installed, the runtime components must be installed and configured.

Windows

To set up a runtime environment on Windows:

    • Only the .NET runtime is required. The .NET SDK is only needs to be installed on devices that will be used to develop and compile .NET applications.
    • The .NET desktop runtime is only required for Windows devices that will be used to also run .NET 8+ GUI applications like Winforms and WPF.
    • The ASP.NET runtime is only required for devices that will run ASP.NET applications like Blazor.
  1. Download and install the .NET Framework 4.x for jControls applications.

Linux

To set up a runtime environment on Linux:

  1. Download and install .NET - For more detailed information see Microsoft's official documentation. If your operating system does not have a .NET installation package, try using Microsoft's installation script.
  2. For jControls NF4 applications, install the Mono Framework. The Mono Frameork framework is an open source implementation of the .NET Framework 4.x for Linux.

COMFILE Technology's ComfilePi panel PCs come with both .NET and Mono are already installed and ready to use.

Workaround for .NET ARM Linux Garbage Collection Bug

Important - Due to a bug in the .NET runtime, it may be necessary to restrict the .NET garbage collector's memory limit on devices with small amounts of memory (e.g. a Raspberry Pi) or CFNET applications may abort prematurely. To set the garbage collector's memory limit, create or open the file /etc/environment, and add the following line to the file.

DOTNET_GCHeapHardLimitPercent=32

For more information about this setting, see Microsoft's official documentation.

Linux Permissions for USB Devices

By default, Linux does not give ordinary users direct access to USB devices. That will result in errors when attempting to communicate with the CFHEADER module without elevated privileges. To give access to USB devices for ordinary users, create a file named /etc/udev/rules.d/99-usb.rules with the following contents:

SUBSYSTEM=="usb", GROUP="plugdev", MODE="0666"

Then reboot.

Typing Korean

If the jKeyboard.ShowKorean property is true, libhangul will need to be installed to handle composition of Korean characters.

sudo apt install libhangul1
cfnet/runtime_environment.txt · Last modified: 2024/11/07 11:12 by COMFILE Technology