<html><head><meta http-equiv="Content-Type" content="text/html; charset=ANSI_X3.4-1968"><title>load-foreign-library</title><link rel="stylesheet" href="ecl.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.75.2"><link rel="home" href="index.html" title="The ECL manual"><link rel="up" href="rn05.html" title="Functions & Libraries"><link rel="prev" href="rn05re76.html" title="def-function"><link rel="next" href="rn05re78.html" title="find-foreign-library"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center"><code class="function">load-foreign-library</code></th></tr><tr><td width="20%" align="left"><a accesskey="p" href="rn05re76.html">Prev</a> </td><th width="60%" align="center">Functions & Libraries</th><td width="20%" align="right"> <a accesskey="n" href="rn05re78.html">Next</a></td></tr></table><hr></div><div class="refentry" title="load-foreign-library"><a name="uffi.load-foreign-library"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p><code class="function">load-foreign-library</code> — Loads a foreign library. </p></div><div class="refsynopsisdiv" title="Function"><h2>Function</h2><pre class="synopsis"> <code class="function">load-foreign-library</code> <em class="replaceable"><code>filename &key module supporting-libraries force-load</code></em> => <span class="returnvalue">success</span> </pre><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><p><span class="term"><em class="parameter"><code>filename</code></em></span></p></td><td><p>A string or pathname specifying the library location in the filesystem. At least one implementation (<span class="application">Lispworks</span>) can not accept a logical pathname. If this parameter denotes a pathname without a directory component then most of the supported Lisp implementations will be able to find the library themselves if it is located in one of the standard locations as defined by the underlying operating system.</p></td></tr><tr><td><p><span class="term"><em class="parameter"><code>module</code></em></span></p></td><td><p>A string designating the name of the module to apply to functions in this library. (Required for Lispworks)</p></td></tr><tr><td><p><span class="term"><em class="parameter"><code>supporting-libraries</code></em></span></p></td><td><p>A list of strings naming the libraries required to link the foreign library. (Required by CMUCL)</p></td></tr><tr><td><p><span class="term"><em class="parameter"><code>force-load</code></em></span></p></td><td><p>Forces the loading of the library if it has been previously loaded. </p></td></tr><tr><td><p><span class="term"><span class="returnvalue">success</span></span></p></td><td><p>A boolean flag, <code class="constant">T</code> if the library was able to be loaded successfully or if the library has been previously loaded, otherwise <code class="constant">NIL</code>.</p></td></tr></tbody></table></div></div><div class="refsect1" title="Description"><a name="id696019"></a><h2>Description</h2><p>Loads a foreign library. Applies a module name to functions within the library. Ensures that a library is only loaded once during a session. A library can be reloaded by using the <span class="symbol">:force-load</span> key.</p></div><div class="refsect1" title="Examples"><a name="id696034"></a><h2>Examples</h2><pre class="screen"> (load-foreign-library #p"/usr/lib/libmysqlclient.so" :module "mysql" :supporting-libraries '("c")) => T</pre></div><div class="refsect1" title="Side Effects"><a name="id696048"></a><h2>Side Effects</h2><p>Loads the foreign code into the Lisp system.</p></div><div class="refsect1" title="Affected by"><a name="id696058"></a><h2>Affected by</h2><p>Ability to load the file.</p></div><div class="refsect1" title="Exceptional Situations"><a name="id696068"></a><h2>Exceptional Situations</h2><p>None.</p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="rn05re76.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="rn05.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="rn05re78.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top"><code class="function">def-function</code> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> <code class="function">find-foreign-library</code></td></tr></table></div></body></html>