Re: make check-exec-image failure

Bruno Haible <[email protected]>
Newsgroups gmane.lisp.clisp.devel
Message-ID <3435476.NL27meWhMu@omega>
Hi Sam,

> > My priority for the moment is to fix build errors.
> 
> Does this include the "make check-image" failure?
> https://sourceforge.net/p/clisp/bugs/687/

No. (savemem ... :executable t) is based on
spvw_memfile.d:savemem_with_runtime, which consists in *appending*
a memory image to an *executable file*.

This is precisely the hack which delayed the port of AKCL to Linux
by 1 year in 1992/1993 (which is why then clisp became more popular
than AKCL on Linux) [1]. I had ported clisp to Linux in 1 day.

And it is because of this lesson that I decided to create 'clisp-link'
based on the notion of a "linking set" [2] where the memory image
is *separate* from the executable.

I certainly won't spend time digging in the internals of the Mach-O
object format in order to find out how to port this to Mac.

Instead, I would better see
  1) the doc clearly state in [3] that this is a platform-dependent
     feature (and list the OSes on which it works),
  2) adjust makemake.in so that this feature gets tested only on
     those platforms where it works.

Additional background:
There is now a general move away from "pack everything into one file"
to "create separate file for different purposes".

* Distros have in fact started to distribute the debug information for binaries
  in separate files. So, instead of having a file 'foo' that may or may not
  contain debug information, you have a file 'foo' without debug information
  and optionally a file '/var/debug/foo' with only the debug information.
  What is the benefit? You can install the debug information on the fly, when
  you need it, for example once the binary crashed for the first time.

* Similarly, in old Windows, executable code and resources were packed in the
  same .exe file. In OS X, which is more modern, the executable code and the
  resources are just normal files in a single 'foo.app' directory.

Bruno

[1] http://www.ibiblio.org/pub/historic-linux/ftp-archives/sunsite.unc.edu/Sep-29-1996/devel/lang/lisp//akcl.README
[2] http://clisp.org/impnotes/modules.html#mod-overview
[3] http://clisp.org/impnotes/image.html


------------------------------------------------------------------------------
Announcing the Oxford Dictionaries API! The API offers world-renowned
dictionary content that is easy and intuitive to access. Sign up for an
account today to start using our lexical data to power your apps and
projects. Get started today and enter our developer competition.
http://sdm.link/oxford
_______________________________________________
clisp-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/clisp-devel
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.