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.
To set up a runtime environment on Windows:
To set up a runtime environment on Linux:
COMFILE Technology's ComfilePi panel PCs come with both .NET and Mono are already installed and ready to use.
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.
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.
If the jKeyboard.ShowKorean
property is true
, libhangul will need to be installed to handle composition of Korean characters.
sudo apt install libhangul1