This library performs checks on the installed system to verify which
optional components are available and whether all libraries that load
shared objects/DLLs can be loaded.
- component(?Component, -Features) is nondet[private]
- This predicate describes the test components. Features is a dict
with the following components:
- test:Goal
- (Additional) test that must succeed for the component to be
functional.
- url:URL
- URL with additional information, relative to
http://www.swi-prolog.org/build/issues/
. If not provided,
the library file with extension .html
is used.
- optional:true
- If the library does not exist, do not complain.
- os:OS
- One of
windows
, unix
or linux
. If present, the component
is only checked for if we are running on a version of the
specified operating system.
- features:Goal
- After successful evaluation that loading and basic operation
of the component succeeds, run this to check additional
features.
- check_installation is det
- Check features of the installed system. Performs the following
tests:
- Test whether features that depend on optional libraries
are present (e.g., unbounded arithmetic support)
- Test that all standard libraries that depend on foreign
code are present.
- provides a test_installation predicate to run the tests
at runtime if the system was built with -DINSTALL_TESTS
If issues are found it prints a diagnostic message with a link
to a wiki page with additional information about the issue.
- check_installation(-Issues:list(pair)) is det
- As check_installation/0, but additionally returns a list of
Component-Problem pairs. Problem is one of
optional_not_found
(optional component is not present), not_found
(component is
not present) or failed
(component is present but cannot be
loaded).
- test_component(+Properties) is semidet[private]
- Run additional tests to see whether the component really works.
- check_features(+Properties) is semidet[private]
- Check for additional features of the components.
- See also
- - check_component/1 should be used for checking that the
component works.
- run_silent(:Goal, +Properties) is semidet[private]
- Succeed if Goal succeeds and does not print any errors or
warnings.
- run_collect_messages(Goal, Result, Messages) is det[private]
- Run Goal, unify Result with
true
, false
or exception(Error)
and messages with a list of generated error and warning
messages. Each message is a term:
message(Term,Kind,Lines)
- See also
- - message_hook/3.
- test_tcmalloc[private]
- archive_features[private]
- Report features supported by library(archive).
- pcre_features[private]
- jquery_file[private]
- Test whether jquery.js can be found
- check_on_path[private]
- Validate that Prolog is installed in $PATH. Only performed if the
running executable is a normal executable file, assuming some
special installation such as the WASM version otherwise.
- test_installation is semidet
- test_installation(+Options) is semidet
- Run regression tests in the installed system. Requires the system to
be built using
cmake -DINSTALL_TESTS=ON
Options processed:
- packages(+Boolean)
- When
false
, do not test the packages
- package(+Package)
- Only test package package.
- check_config_files
- Examines the locations of config files. The config files have moved
in version 8.1.15
- update_config_files
- Move config files from their old location to the new if the file or
directory exists in the old location but not in the new.
- check_autoload[private]
- Find possible ambiguous predicates in the autoload index.
Re-exported predicates
The following predicates are exported from this file while their implementation is defined in imported modules or non-module files loaded by this module.
- test_installation is semidet
- test_installation(+Options) is semidet
- Run regression tests in the installed system. Requires the system to
be built using
cmake -DINSTALL_TESTS=ON
Options processed:
- packages(+Boolean)
- When
false
, do not test the packages
- package(+Package)
- Only test package package.