[Ecls-list] Standalone binary not really standalone?

Bruce-Robert Fenn Pocock brpocock at star-hope.org
Wed May 29 16:27:11 UTC 2013


On Wed, May 29, 2013 at 12:10 PM, William Hounslow <
hounslow at users.sourceforge.net> wrote:
>
> I was hoping to use make-build to create a monolithic binary I could then
just drop into the cgi-bin directory. It failed thus:
>
> error while loading shared libraries: libecl.so.13.4: cannot open shared
object file: No such file or directory
>
> Can a truly standalone program be created? If not, how to ensure that the
end user can deploy the output binary in a location of their choice?

As an alternative, you may be able to set the environment variable
LD_LIBRARY_PATH on Linux (or something similar on your OS) to locate
libraries; e.g. if this is a Linux/Apache combo, in your <Directory>
section, you may be able to add something like this…

<Directory /cgi-bin>
   SetEnv LD_LIBRARY_PATH /var/www/cgi-lib/
    ...
</Directory>
… with the appropriate directory, of course.

With Gnu LD, you may also be able to hard-code a preferred RPath into the
executable file itself using the LD flag like -rpath=/var/www/cgi-lib — you
may be able to pass this via the ASDF:MAKE-BUILD :LD-FLAGS … ?

By the by, … how are you trying to run asdf:make-build? Did you in fact
call it with :MONOLITHIC T or :TYPE :PROGRAM?
(I'm sure someone far better versed in the ECL side of things may be able
to help better, but that does seem to be the first thing necessary. :-) )


> Thanks in advance,
>
> William
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.common-lisp.net/pipermail/ecl-devel/attachments/20130529/ae62c4c9/attachment.html>


More information about the ecl-devel mailing list