<div dir="auto"><div>Hi,<div class="gmail_extra"><br><div class="gmail_quote">Le 24 août 2017 10:18 AM, "Daniel Kochmański" <<a href="mailto:daniel@turtleware.eu">daniel@turtleware.eu</a>> a écrit :<br type="attribution"><blockquote class="quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hey,<br>
<br>
you can build ECL as a static library and statically link with it. You have to pass --disable-shared flag at configure time. Then you will have libecl.a and statically linked ecl binary. This option isn't well tested but it works as far as I can tell. You may want to link your library with other static libs, like libcmp.a etc, which will be installed in DESTDIR/lib/ecl-16.1.3/ .<br></blockquote></div></div></div><div dir="auto"><br></div><div dir="auto">Thanks! I gave in and added ecl itself as a submodule of my application, and am now building it as part of the normal build. It's not that bad.</div><div dir="auto"><br></div><div dir="auto"><div class="gmail_extra"><div class="gmail_quote"><blockquote class="quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
Note, that you won't be able to load natively compiled FAS files (only bytecompiled FASC) at runtime, only to compiled with build libraries. That could be fixed and is somewhere on my list (though it has a low priority).<br></blockquote></div></div></div><div dir="auto"><br></div><div dir="auto">This... actually makes it kind of painful. It means ASDF doesn't work. So I have to load the dependencies myself, compile them and load them file after file, recursively (bottom first).</div><div dir="auto"><br></div><div dir="auto">A bit too painful for my taste, and I went with bundling the shared library with the app in the end, in order to keep some sanity. I'm not familiar enough with ASDF internal API to write such a script on hobby time.</div><div dir="auto"><br></div><div dir="auto">On a side note, this led me to a minor struggle, which is that I had to have the help.doc file in $PWD to be able to run the built program. I accidentally found the ECLDIR environment variable to specify a separate path to it, but I think this would need to be documented?</div><div dir="auto"><br></div><div dir="auto">Cheers,</div><div dir="auto">Florian</div><div dir="auto"><br></div><div dir="auto"><div class="gmail_extra"><div class="gmail_quote"><blockquote class="quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
Best regards,<br>
Daniel<div class="elided-text"><br>
<br>
On <a href="tel:22.08.2017%2000" value="+12208201700" target="_blank">22.08.2017 00</a>:27, Florian Margaine wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Hi,<br>
<br>
I've been trying to build a real static binary for easy deployment.<br>
<br>
So far, everything I've tried still links to libecl as a shared<br>
library; is it possible to have a static library of it, so that my<br>
static binary can bundle it?<br>
<br>
I guess I kind of want to shy away from building ECL myself, it's kind<br>
of a pain to require that for other developers working on this<br>
project.<br>
<br>
Regards,<br>
<br>
</blockquote>
<br>
</div></blockquote></div><br></div></div></div>