Shinmera / deploy

Deployment tools for standalone Common Lisp applications

Home Page:https://shinmera.github.io/deploy/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Unable to use on Windows using sbcl 2.3.2

simendsjo opened this issue · comments

I'm having problems using deploy on Windows. Looks like a missing library, but I'm having problems finding out what.

* (asdf:make :passish)

STYLE-WARNING:
   Generic function FSET:ITERATOR clobbers an earlier FTYPE proclamation
   (FUNCTION (T &KEY &ALLOW-OTHER-KEYS) (VALUES FUNCTION &REST T)) for the same
   name with (FUNCTION (T &KEY &ALLOW-OTHER-KEYS) *).
#P"C:/Users/simend/quicklisp/local-projects/passish/bin/passish"
 ==> Running load hooks.
 ==> Gathering system information.
   -> Will load the following foreign libs on boot:
      (#<DEPLOY:LIBRARY DEFAULT-435>)
 ==> Deploying files to C:/Users/simend/quicklisp/local-projects/passish/bin/

debugger invoked on a SIMPLE-ERROR in thread
#<THREAD "main thread" RUNNING {1000228073}>:
  #<LIBRARY DEFAULT-435> does not have a known shared library file path.
* (defparameter l (car (deploy:list-libraries)))`
* l
#<DEPLOY:LIBRARY DEFAULT-435>
* (deploy:library-system l)
NIL
* (deploy:library-path l)
NIL
* (deploy:library-sources l)
NIL

i was able to debug some in Emacs, but it's actually user32.dll which cannot be found. Tried adding \windows\system32 to cffi, but it still doesn't work 🤷

image

There's a restart where I'm able to add a path myself, adding c:/windows/system32/user32.dll, it works. But it seems like the source should already account for this..?

This has nothing to do with Deploy and everything with whatever libraries you're making use of that badly configure the foreign library instances.

Deploying on Windows with SBCL works just fine, even when using User32.

Using cffi:define-foreign-library instead of an ad-hoc definition like that.