[Ecls-list] Standalone binary not really standalone?
William Hounslow
hounslow at users.sourceforge.net
Tue Jun 4 18:26:21 UTC 2013
Hi again,
On 29/05/2013 18:53, Juan Jose Garcia-Ripoll wrote:
>
> On Wed, May 29, 2013 at 6:10 PM, William Hounslow
> <hounslow at users.sourceforge.net
> <mailto:hounslow at users.sourceforge.net>> wrote:
>
> 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?
>
>
> Apart from what you have been told, ECL can be built in statically
> linked mode with --disable-shared. In this case, standalone
> executables should be linked against a statically linked version of
> the library. But I personally find the other solution (deliver
> executable with the ECL library) preferable (and more compliant with
> LGPL).
>
> Juanjo
>
>
> --
> Instituto de Física Fundamental, CSIC
> c/ Serrano, 113b, Madrid 28006 (Spain)
> http://juanjose.garciaripoll.googlepages.com
I rebuilt ECL as suggested, deleted the old binary, evaluated
(ext:install-c-compiler) and was able to get the hoped-for statically
linked program.
Now I need to change something and recompile.
The initial problem was something to do with an unexpected rubout
character in the FASL (I don't have a record of this unfortunately). I
then tried deleting the ASDF cache to force a total recompilation. Now I
get:
Condition of type: CASE-FAILURE
:FASL fell through ECASE expression.
Wanted one of (:PROGRAM :LIB ...).
Broken at C::BUILDER. In: #<process TOP-LEVEL>.
>> :b
Backtrace:
> C::BUILDER
> c:build-fasl
> uiop/lisp-build:compile-file*
> lambda
> uiop/utility:call-with-muffled-conditions
> uiop/lisp-build:call-with-muffled-compiler-conditions
> lambda
> uiop/utility:call-function
> uiop/lisp-build:call-around-hook
> asdf/lisp-action:call-with-around-compile-hook
> asdf/lisp-action:perform-lisp-compilation
> asdf/action:perform
> asdf/action:perform-with-restarts
> asdf/action:perform-with-restarts
> asdf/plan:perform-plan
> asdf/plan:perform-plan
> asdf/operate:operate
> call-next-method
> lambda
> asdf/cache:call-with-asdf-cache
> asdf/find-system::call-with-system-definitions
> lambda
> asdf/operate:operate
> call-next-method
> lambda
> asdf/cache:call-with-asdf-cache
> asdf/find-system::call-with-system-definitions
> lambda
> lambda
> asdf/bundle:make-build
> si:bytecodes [Evaluation of: (asdf/bundle:make-build :process-form
...)]
> si:bytecodes [Evaluation of: (si:top-level t)]
What is wrong?
Thanks in anticipation,
William
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.common-lisp.net/pipermail/ecl-devel/attachments/20130604/6363b938/attachment.html>
More information about the ecl-devel
mailing list