How to distribute the asdf/quicklisp dependencies along with an app compiled with Embeddable Common Lisp?

后端 未结 1 1493
爱一瞬间的悲伤
爱一瞬间的悲伤 2021-01-21 18:05

I have tried this example ECL repository asdf example , it works fine but it doesn\'t have any asdf dependencies. If i add

:depends-on (#:inferior-shell)

1条回答
  •  清歌不尽
    2021-01-21 18:46

    EDIT: this problem is fixed for ECL newer than 16.1.3 (fixed in develop branch), so no `require' trick should be needed in the upcoming release.

    In general path you have taken is correct.

    Make sure, that you have required the ASDF:

    (require 'asdf)
    (find-package "ASDF/DRIVER")
    

    Then "ASDF/DRIVER" package is defined. On the other hand inferior-shell requires a few other libraries (alexandria for instance), so you have to put the path to them in the ASDF central registry or use the Quicklisp bundles.

    More detailed info about building with ECL is available in its Documentation.

    // EDIT After investigation it appears that ASDF has to be manually required at the program start. It is probably a bug. As a workaround add

    :prologue-code '(require 'asdf)
    

    to the (asdf:make-build …) for standalone executable. Everything works fine then.

    0 讨论(0)
提交回复
热议问题