Optimizing your system

Since less is better is the rule of thumb for embedded systems, the QNX System Builder's System Optimizer and the Dietician help you optimize your final system by:

If you reduce a shared library, and your image subsequently needs to access binaries on a filesystem (disk, network, etc.) that isn't managed by the QNX System Builder, then the functions required by those unmanaged binaries may not be present. This causes those binaries to fail on execution.

In general, shared-library optimizers such as the Dietician are truly useful only in the case of a finite number of users of the shared libraries, as you would find in a closed system (i.e. a typical embedded system).

If you have only a small number of unmanaged binaries, one workaround is to create a dummy flash filesystem image and add to this image the binaries you need to access. This dummy image is built with the rest of the images, but it can be ignored. This technique lets the Dietician be aware of the requirements of your runtime system.

Related concepts
Introducing the QNX System Builder
Boot script files
Overview of images
Downloading an image to your target
Configuring your QNX System Builder projects
Moving files between the host and target
Related tasks
Creating a new QNX System Builder project for an OS image
Creating a project for a flash filesystem image (an .efs file)
Building an OS image
Exporting a System Builder project to a Mkxfs build file(s)