Hi Lispers,

I'm having a problem with the following:

  (eval-when (:compile-toplevel :load-toplevel :execute)
    (load-foreign-library "/usr/lib/libcrypt.so" ;; crypt(3)
                        :module "crypt"
                        :supporting-libraries nil))
  
I'm using defsystem to load the file that contains the above form;
let's call it sec.lisp. 

When I load sec.lisp, sec.x86f is produced and loads fine.

When I load sec.x86f, I get the following error:

  Error in function COMMON-LISP::FOREIGN-SYMBOL-ADDRESS-AUX:
     Unknown foreign symbol: "crypt"
  
  Restarts:
    0: [CONTINUE] Return NIL from load of "/usr/local/home/ngps/prog/sec.x86f".
    1: [ABORT   ] Return to Top-Level.
  
  Debug  (type H for help)
  
  (COMMON-LISP::FOREIGN-SYMBOL-ADDRESS-AUX "crypt")
  Source: 
  ; File: target:code/x86-vm.lisp
  
  ; File has been modified since compilation:
  ;   target:code/x86-vm.lisp
  ; Using form offset instead of character position.
  (ERROR "Unknown foreign symbol: ~S" NAME)
  0] 

If I remove sec.x86f so that defsystem offers to compile sec.lisp, it loads
fine again.

load-foreign-library is from UFFI.
  
I recall that I used to not have this problem a few months ago, although 
I was a rank CL newbie then and was in monkey-see-monkey-do mode, so I may
be remembering wrong.

I'm running CMUCL 18d (installed from ports) on two FreeBSD boxen, one
4.6-PRERELEASE and the other 4.7-STABLE.

Hints appreciated. Cheers.

-- 
Ng Pheng Siong <[EMAIL PROTECTED]> * http://www.netmemetic.com


Reply via email to