more details added, and examples adjusted

This commit is contained in:
Dima Pasechnik 2021-06-10 14:33:08 +01:00
parent 5e99481bd3
commit a58106e207
3 changed files with 12 additions and 12 deletions

View file

@ -4,11 +4,10 @@ Build and load this module with (compile-file "cffi.lsp" :load t)
;;
;; This toplevel statement notifies the compiler that we will
;; need this shared library at runtime. We do not need this
;; statement in windows.
;; statement in windows or macOS.
;;
#-(or ming32 windows)
(cffi:load-foreign-library #+darwin "/usr/lib/libm.dylib"
#-darwin "/usr/lib/libm.so")
#-(or ming32 windows darwin)
(cffi:load-foreign-library "/usr/lib/libm.so")
;;
;; With this other statement, we import the C function sin(),
;; which operates on IEEE doubles.

View file

@ -5,11 +5,10 @@ Load it with (load "uffi.fas")
;;
;; This toplevel statement notifies the compiler that we will
;; need this shared library at runtime. We do not need this
;; statement in windows.
;; statement in windows and macOS.
;;
#-windows
(uffi:load-foreign-library #+darwin "/usr/lib/libm.dylib"
#-darwin "/usr/lib/libm.so")
#-(or windows darwin)
(uffi:load-foreign-library "/lib64/libm.so.6") ;; adjust the library path/name as needed
;;
;; With this other statement, we import the C function sin(),
;; which operates on IEEE doubles.

View file

@ -212,6 +212,9 @@ that the compiler may include them at link time.
@item
Every function you will use has to be declared using
@coderef{ffi:def-function}.
@item
In the cases of headers not used by ECL, a header to include might need
to be specified using @coderef{ffi:clines}.
@end itemize
@lisp
@ -257,11 +260,10 @@ Build and load this module with (compile-file "cffi.lsp" :load t)
;;
;; This toplevel statement notifies the compiler that we will
;; need this shared library at runtime. We do not need this
;; statement in windows.
;; statement in windows or macOS.
;;
#-(or ming32 windows)
(cffi:load-foreign-library #+darwin "/usr/lib/libm.dylib"
#-darwin "/usr/lib/libm.so")
#-(or ming32 windows darwin)
(cffi:load-foreign-library "/usr/lib/libm.so")
;;
;; With this other statement, we import the C function sin(),
;; which operates on IEEE doubles.