Difference between revisions of "Package.loadlib"

From GiderosMobile
 
(3 intermediate revisions by 2 users not shown)
Line 4: Line 4:
  
 
=== Description ===
 
=== Description ===
Dynamically links the host program with the C library libname. Inside this library, looks for a function funcname and returns this function as a C function. (So, funcname must follow the protocol (see lua_CFunction)).  
+
Dynamically links the host program with the C library libname. Inside this library, looks for a function funcname and returns this function as a C function. funcname must follow the C protocol (see lua_CFunction)).
<source lang="lua">
+
<syntaxhighlight lang="lua">
 
package.loadlib(libname,funcname)
 
package.loadlib(libname,funcname)
</source>
+
</syntaxhighlight>
 
 
  
 
  This is a low-level function. It completely bypasses the package and module system. Unlike require, it does not perform any path searching and does not automatically adds extensions. libname must be the complete file name of the C library, including if necessary a path and extension. funcname must be the exact name exported by the C library (which may depend on the C compiler and linker used).  
 
  This is a low-level function. It completely bypasses the package and module system. Unlike require, it does not perform any path searching and does not automatically adds extensions. libname must be the complete file name of the C library, including if necessary a path and extension. funcname must be the exact name exported by the C library (which may depend on the C compiler and linker used).  

Latest revision as of 23:40, 1 December 2023

Available since: Gideros 2011.6
Class: package

Description

Dynamically links the host program with the C library libname. Inside this library, looks for a function funcname and returns this function as a C function. funcname must follow the C protocol (see lua_CFunction)).

package.loadlib(libname,funcname)
This is a low-level function. It completely bypasses the package and module system. Unlike require, it does not perform any path searching and does not automatically adds extensions. libname must be the complete file name of the C library, including if necessary a path and extension. funcname must be the exact name exported by the C library (which may depend on the C compiler and linker used). 
This function is not supported by ANSI C. As such, it is only available on some platforms (Windows, Linux, Mac OS X, Solaris, BSD, plus other Unix systems that support the dlfcn standard).

Parameters

libname: (string) name of the library to load
funcname: (string) name of the function in library