## E.4 libSingular

`libSingular` is the C++-library version of SINGULAR.
`Singular/libsingular.h` is the main include file, `-lSingular` the link parameter,
`lib/pkgconfig/Singular.pc` provides all parameters in the pkconfig format.

It contains all parts of SINGULAR with the following exceptions:

1. memory allocation functions for GMP (see `mmInit` in `Singular/tesths.cc`)
2. signal handlers (see `init_signals` in `Singular/cntrlc.cc`).
   At least a handler for `SIGCHLD` must be installed for the commands waitfirst, waitall and the routines from parallel_lib, modstd_lib, normal_lib, tasks_lib.
   If the child was started by `libSingular` the handler has to call `sig_chld_hdl` from `Singular/links/ssiLink.cc` or implement something similar (call `slClose(l)` for ssi links).
3. error handlers for factory, NTL (see `init_signals` in `Singular/cntrlc.cc`).
4. parallelism: The number of cores defaults to 1 ( Parallel computing)

User manual for Singular version 4.4.1, 2025, generated by texi2html.