Compiling a binary that uses quicklisp

Brandon Hale <[email protected]> Thu, 9 Feb 2023 18:20:23 -0500
Newsgroups gmane.lisp.ecl.general
Message-ID <[email protected]>
This is a multi-part message in MIME format.
--------------ElyO7ArWZ0JeAk2BuxsQpFt2
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hello all,

I apologize if this is either the wrong place to get help with ecl, or 
if this is asked all of the time. I've written a small replacement for 
i3status with common lisp and want to use ecl to make a binary so when 
i3wm loads, it just loads the cl-i3status binary. I've looked at the ecl 
documentation online and it suggests doing something like this:

(ql:quickload :cl-i3)

(asdf:make-build :cl-i3

                  :type :program

                  :move-here #P"/home/brandon/Programming/lisp/cl-i3/"

                  :prologue-code '(require 'asdf))

So, I run this and the binary appears. However, when I try to run it, I 
get this output:

;;; Loading #P"/usr/lib/ecl-21.2.1/asdf.fas"
;;; Computing Hangul syllable names
Condition of type: MISSING-COMPONENT
Component "str" not found

Available restarts:

1. (RETRY) Retry ASDF operation.
2. (CLEAR-CONFIGURATION-AND-RETRY) Retry ASDF operation after resetting the configuration.

Top level in: #<process TOP-LEVEL 0x557ade1c2f80>.
>

I imagine it is just because of my use of quicklisp packages, but how do 
I compile the packages into the binary?

Thank you very much for any help you can offer,

Brandon Hale

--------------ElyO7ArWZ0JeAk2BuxsQpFt2
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: 8bit

<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <p>Hello all,</p>
    <p>I apologize if this is either the wrong place to get help with
      ecl, or if this is asked all of the time. I've written a small
      replacement for i3status with common lisp and want to use ecl to
      make a binary so when i3wm loads, it just loads the cl-i3status
      binary. I've looked at the ecl documentation online and it
      suggests doing something like this:</p>
    <pre>(ql:quickload :cl-i3)</pre>
    <pre>
(asdf:make-build :cl-i3</pre>
    <pre>                 :type :program</pre>
    <pre>                 :move-here #P"/home/brandon/Programming/lisp/cl-i3/"</pre>
    <pre>                 :prologue-code '(require 'asdf))</pre>
    <p>So, I run this and the binary appears. However, when I try to run
      it, I get this output:</p>
    <pre>;;; Loading #P"/usr/lib/ecl-21.2.1/asdf.fas"
;;; Computing Hangul syllable names
Condition of type: MISSING-COMPONENT
Component "str" not found

Available restarts:

1. (RETRY) Retry ASDF operation.
2. (CLEAR-CONFIGURATION-AND-RETRY) Retry ASDF operation after resetting the configuration.

Top level in: #&lt;process TOP-LEVEL 0x557ade1c2f80&gt;.
&gt;

</pre>
    <p>I imagine it is just because of my use of quicklisp packages, but
      how do I compile the packages into the binary? <br>
    </p>
    <p>Thank you very much for any help you can offer,</p>
    <p>Brandon Hale<br>
    </p>
  </body>
</html>

--------------ElyO7ArWZ0JeAk2BuxsQpFt2--