6.9.2 Customizing the Debugged Runtime System

It is possible to fine-tune the behavior of the debugged runtime system in various ways, both at compile time (setting C preprocessor symbols and passing system properties to SP_initialize()) and at runtime (passing system properties as environment variables).

The system properties and environment variables that affect the debugged runtime system are:


if set to yes, the runtime system will try to start a development system, as described above.


if set to yes, has the same effect as SP_USE_DEVSYS=yes and in addition tries to attach to the SICStus Prolog IDE (SPIDER). You have to tell SPIDER to ‘Attach to Prolog Process’, i.e. listen for an incoming connection. This command is available from the SICStus top-level view menu in SPIDER.


if set to yes, will prevent the runtime system from calling trace/0 at initialization. This is useful if you prefer to manually enable the debugger later from your C or Prolog code.


if set to no, will prevent the runtime system from starting as a development system. This may be useful in order to prevent inheriting SP_USE_DEVSYS or SP_ATTACH_SPIDER from the environment. The same effect can be obtained by passing the option --no-allow-devsys to spld when building the runtime system.


These are described in Locating the License Information, above.

If your C code calls SP_initialize() you can pass these system properties in the call to SP_initialize() (see SP_initialize). You can also pass these options to SP_initialize() by setting the SPLD_DSP C macro. See the definition of SP_initialize() in the header file sictus/sicstus.h for details.

Send feedback on this subject.