logo       

My executable stuff: msg#00366

lisp.cmucl.devel

Subject: My executable stuff


Hello,

Well, I don't know what was going on earlier with purify but it seems
to have gone away. I suspect I hadn't rebuilt enough times or
something.

At any rate, I've been able to verify that my lisp executable stuff
works under both FreeBSD and Linux. I haven't gotten Solaris to work
yet, but perhaps that will come.

In the process, I allowed my annoyance at all the gcc compiler
warnings that occur during building lisp to get the best of me....I
went and fixed them. At least for FreeBSD. I can't fix all of them
for Linux because there's this macro called GET_CONTEXT that declares
some variables that aren't used. I don't know enough about the code
to fix GET_CONTEXT.

Anyway the result is that I've changed a fair number of C files. I
wonder if there's some way for me to get this stuff looked at?

My current scheme for building executables is just to add a flag to
save-lisp. Then save-lisp will dump the lisp spaces into ELF object
files, then call a script that invokes the linker. It will look in
the library: paths to find the script which is called "linkit". It
hands the name of the executable to linkit, which then will link the
lisp space objects together with an archive called lisp.a that will be
kept in the same directory as linkit. lisp.a will get created at the
same time that the lisp executable gets built, and will just consist
of all the .o files run through ar. It will have to be moved into the
lib directory by hand, just like lisp and lisp.core, if you use Pierre
Mai's build scripts.

There are two new files other than the changes to stuff in src/lisp
and src/code: linkit and cmucl-linker-script. The only problem is
that both these files are specific to the operating system (slightly
different versions for FreeBSD and Linux, and who knows about whatever
else) and one or two paths need to be set to make them work. Perhaps
there's a way to set these paths automatically.

If someone will let me know what to do with this stuff, I'll do
it. :-)

--
Fred Gilham gilham@xxxxxxxxxxx
Jordan Hubbard: We have a crash bug. It needs to be fixed. We DO NOT
need to know how to print 3000 spaces in 11 different languages! :-)
Daniel Sobral: I concur. But if anyone wants to do it with loader,
: 3kbl 3000 0 do bl emit loop ; 3kbl will do the trick.




<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

News | FAQ | advertise