[Ecls-list] Example about building / loading ECL libraries

Dietrich Bollmann dietrich at formgames.org
Fri Jun 28 03:37:12 UTC 2013


Hi Juanjo,

I found your report here

  - [asdf-devel] ASDF's MAKE-BUILD breaks ECL's DLL target
    http://comments.gmane.org/gmane.lisp.asdf.devel/3109

and - as already usual - was very impressed by your immediate efforts to
solve the problem!

I downloaded the patch and the asdf sources, build a new asdf.lisp and
repeated my experiments.

I works!  Thank you again!

There are only some minor problems left:

  - Only the file 'hello-lisp.dll' was moved from the lisp cache directory,
where it was built, into the working directory.  So I had to move the file
'hello-lisp.lib' manually myself.

  - Rather then 'init_lib_HELLO_LISP' the function to init the generated
library is named 'init_dll_HELLO_LISP'.  No problem, of course, I just had
to adapt my code to use this naming convention.

Beyond that everything works just fine :)

Here, just for reference, the code I used to build the library:

--- compile.lisp ---
(ext:install-c-compiler)
(require :asdf)
(push "./" asdf:*central-registry*)
(asdf:make-build :hello-lisp :type :shared-library :move-here "./")
(quit)
---

--- and in my Makefile ---

hello-lisp.lib: hello-lisp.asd hello-lisp.lisp
ecl -norc -load compile.lisp
cp
'C:/Users/dietrich/AppData/Local/common-lisp/cache/ecl-13.4.1-a40c1907-win-x86/E/Users/dietrich/home/cs/lang/lisp/ecl/diary/2013/06/28/examples/embed/shared-library/v010/hello-lisp.lib'
.

---

Please allow me to use this opportunity to pose some more questions:

  - Is there some verbosity option which makes 'asdf:make-build' print out
the commands used to build (and move) the library?

  - How can I figure out the cache directory from lisp?

Thanks again,

Dietrich


On Thu, Jun 27, 2013 at 5:37 AM, Juan Jose Garcia-Ripoll <
juanjose.garciaripoll at gmail.com> wrote:

> On Mon, Jun 24, 2013 at 5:26 PM, Dietrich Bollmann <dietrich at formgames.org
> > wrote:
>
>>
>> But unfortunately nothing happens when trying to use this file to build a
>> shared library:
>>
>
> This is a bug in ASDF: it has arbitrarily removed the :DLL/:SHARED-LIBRARY
> targets from MAKE-BUILD. I have reported it with a possible fix for
> evaluation.
>
>
> --
> Instituto de Física Fundamental, CSIC
> c/ Serrano, 113b, Madrid 28006 (Spain)
> http://juanjose.garciaripoll.googlepages.com
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.common-lisp.net/pipermail/ecl-devel/attachments/20130628/a6f7ad3e/attachment.html>


More information about the ecl-devel mailing list