/usr/lib/swipl/library/shlib.pl
All Application Manual Name SummaryHelp

  • swipl
    • library
      • error.pl
      • debug.pl
      • apply.pl
      • lists.pl -- List Manipulation
      • broadcast.pl
      • shlib.pl -- Utility library for loading foreign objects (DLLs, shared objects)
        • compat_arch/2
        • use_foreign_library/1
        • use_foreign_library/2
        • load_foreign_library/1
        • load_foreign_library/2
        • unload_foreign_library/1
        • unload_foreign_library/2
        • current_foreign_library/2
        • foreign_library_property/2
        • reload_foreign_libraries/0
      • option.pl -- Option list processing
      • thread_pool.pl
      • gensym.pl
      • settings.pl -- Setting management
      • arithmetic.pl -- Extensible arithmetic
      • main.pl -- Provide entry point for scripts
      • readutil.pl
      • operators.pl -- Manage operators
      • pairs.pl
      • prolog_source.pl
      • record.pl
      • quasi_quotations.pl -- Define Quasi Quotation syntax
      • sandbox.pl
      • apply_macros.pl -- Goal expansion rules to avoid meta-calling
      • yall.pl -- Lambda expressions
      • assoc.pl
      • prolog_format.pl
      • pure_input.pl
      • solution_sequences.pl -- Modify solution sequences
      • ordsets.pl -- Ordered set manipulation
      • random.pl
      • base64.pl
      • aggregate.pl -- Aggregation operators on backtrackable predicates
      • predicate_options.pl -- Access and analyse predicate options
      • csv.pl
      • pprint.pl -- Pretty Print Prolog terms
      • atom.pl
      • modules.pl
      • occurs.pl
      • prolog_xref.pl -- Prolog cross-referencer data collection
      • prolog_colour.pl -- Prolog syntax colouring support.
      • lazy_lists.pl
      • ugraphs.pl -- Graph manipulation library
      • url.pl
      • www_browser.pl -- Open a URL in the users browser
      • prolog_pack.pl -- A package manager for Prolog
      • git.pl
      • utf8.pl
      • quintus.pl -- Quintus compatibility
      • prolog_versions.pl
      • prolog_wrap.pl -- Wrapping predicates
      • dialect.pl -- Support multiple Prolog dialects
      • date.pl
      • persistency.pl -- Provide persistent dynamic predicates
      • iostream.pl -- Utilities to deal with streams
      • prolog_code.pl -- Utilities for reasoning about code
      • strings.pl
      • dif.pl -- The dif/2 constraint
      • edinburgh.pl -- Some traditional Edinburgh predicates
      • terms.pl
      • ansi_term.pl
      • threadutil.pl -- Interactive thread utilities
      • prolog_stack.pl
      • prolog_clause.pl
      • prolog_breakpoints.pl -- Manage Prolog break-points
      • wfs.pl -- Well Founded Semantics interface
      • sort.pl
      • dicts.pl -- Dict utilities
      • varnumbers.pl -- Utilities for numbered terms
      • rbtrees.pl -- Red black trees
      • backcomp.pl -- Backward compatibility
      • charsio.pl -- I/O on Lists of Character Codes
      • nb_set.pl -- Non-backtrackable sets
      • listing.pl
      • statistics.pl -- Get information about resource usage
      • ctypes.pl -- Character code classification
      • writef.pl -- Old-style formatted write
      • prolog_trace.pl -- Print access to predicates
      • make.pl -- Reload modified source files
      • prolog_coverage.pl -- Coverage analysis tool
      • prolog_autoload.pl -- Autoload all dependencies
      • help.pl
      • prolog_codewalk.pl -- Prolog code walker
      • qsave.pl
      • zip.pl -- Access resource ZIP archives
      • check.pl -- Consistency checking
      • intercept.pl
      • base32.pl -- Base32 encoding and decoding
      • hashtable.pl
      • codesio.pl
      • prolog_jiti.pl
      • tableutil.pl
      • prolog_deps.pl
      • coinduction.pl -- Co-Logic Programming
      • heaps.pl -- heaps/priority queues
      • when.pl
      • optparse.pl -- command line parsing
      • readln.pl
      • system.pl -- System utilities
      • macros.pl
      • nb_rbtrees.pl
      • prolog_history.pl
      • prolog_profile.pl
      • files.pl
      • prolog_debug.pl -- User level debugging tools
      • prolog_config.pl
      • shell.pl
      • vm.pl
      • edit.pl
      • exceptions.pl
      • check_installation.pl -- Check installation issues and features
      • rwlocks.pl
      • oset.pl
      • streams.pl -- Manage Prolog streams
      • thread.pl -- High level thread primitives
      • portray_text.pl
      • qpforeign.pl
      • prolog_metainference.pl -- Infer meta-predicate properties
      • increval.pl -- Incremental dynamic predicate modification
      • tables.pl
      • fastrw.pl
 load_foreign_library(:FileSpec) is det
 load_foreign_library(:FileSpec, +Options:list) is det
Load a shared object or DLL. After loading the Entry function is called without arguments. The default entry function is composed from =install_=, followed by the file base-name. E.g., the load-call below calls the function install_mylib(). If the platform prefixes extern functions with =_=, this prefix is added before calling. Options provided are below. Other options are passed to open_shared_object/3.
install(+Function)
Installation function to use. Default is default(install), which derives the function from FileSpec.
    ...
    load_foreign_library(foreign(mylib)),
    ...
Arguments:
FileSpec- is a specification for absolute_file_name/3. If searching the file fails, the plain name is passed to the OS to try the default method of the OS for locating foreign objects. The default definition of file_search_path/2 searches <prolog home>/lib/<arch> on Unix and <prolog home>/bin on Windows.
See also
- use_foreign_library/1,2 are intended for use in directives.