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


ulink

unlink/unload a dynamically linked shared object

Syntax

ulink(x)
ulink()

Arguments

x

a ID returned by link

Description

see link

If you plan to use valgrind to profile your module, you must first set the environment variable PROFILE_SCILAB_DYNAMIC_LINK before starting scilab:

# under bash shell:
export PROFILE_SCILAB_DYNAMIC_LINK=1
export SCILAB_VALGRIND_OPT="--db-attach=no --show-below-main=yes  --log-fd=2 --log-file=scilab.txt --num-callers=50 -v --trace-redir=yes --read-var-info=yes --trace-children=yes --show-reachable=yes --smc-check=all --child-silent-after-fork=no --leak-check=full --track-origins=yes"
scilab -nwni -profile

This environment variable force Scilab not to release the loaded dynamic libraries. This will allow valgrind to perform its sum-up analysis.

Examples

cd TMPDIR
f1=['#include <math.h>'
    'void fooc(double c[],double a[],double *b,int *m,int *n)'
    '{'
    '   int i;'
    '   for ( i =0 ; i < (*m)*(*n) ; i++) '
    '     c[i] = sin(a[i]) + *b; '
    '}'];
mputl(f1,'fooc.c');

ilib_for_link('fooc','fooc.c',[],"c");
exec loader.sce;

link() // Will should fooc
link("show") // Will should the value 0

ulink(0) // ulink fooc

See also

  • link — dynamic linker
Report an issue
<< Supported and compatible compilers Dynamic/incremental Link ATOMS >>

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:
Thu Oct 24 11:13:15 CEST 2024