Scilab Website | Contribute with GitLab | Mailing list archives | ATOMS toolboxes
Scilab Online Help
5.3.0 - English

Change language to:
Français - 日本語 - Português

Please note that the recommended version of Scilab is 2025.0.0. This page might be outdated.
See the recommended documentation of this function

Scilab manual >> Functions > lib

lib

library definition

Calling Sequence

namelib = lib('lib-dir')

Arguments

lib-dir

character string

namelib

library variable returned by 'lib'.

Description

lib-dir is a character string defining a directory that contains compiled Scilab function (.bin) files.

In addition to these files lib-dir must have a file called names, that contains the names of the functions defined in lib-dir. On success, all functions in lib-dir are available from within Scilab. They are loaded on demand when called for the first time.

Binary files can be created from within Scilab with the command save. A library variable usually is saved for later loading, either on-line or from the user-specific startup file (see startup).

value returned by 'lib' must be insert in a variable 'namelib' to access to macro functions of this library.

Restrictions

Scilab tacitly assumes that each xxxx.bin file defines a variable named xxxx.

Examples

//define some functions
function z=myplus(x, y)
  z = x + y
endfunction

function z=yourplus(x, y)
  x = x - y
endfunction

//create the *.bin files in libdir
libdir = TMPDIR;
save(libdir + '/myplus.bin', myplus);
save(libdir + '/yourplus.bin', yourplus);

//create the name file
mputl(['myplus';'yourplus'],TMPDIR+'/names');

//build the library containing myplus and yourplus
mylibfoo = lib(libdir+'/');

//erase the variables
clear myplus yourplus

//Automatic loading and execution
myplus(1,2)

//erase the variables
clear myplus yourplus

mylibfoo
[n,p] = libraryinfo('mylibfoo')

isdef('myplus')
clear mylibfoo
isdef('myplus')
<< head_comments Functions librarieslist >>

Copyright (c) 2022-2024 (Dassault Systèmes)
Copyright (c) 2017-2022 (ESI Group)
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Wed Jan 26 16:23:48 CET 2011