[M3devel] booting for AMD64_LINUX, continued...

mika at async.caltech.edu mika at async.caltech.edu
Fri Jan 3 06:12:52 CET 2014

Well I managed to get it to work using the following roundabout procedure:

Since the only archives I could find on elegosoft for AMD64_LINUX were ancient,
I installed VirtualBox and FreeBSD/amd64 inside that.  FreeBSD/amd64 for some
reason has very recent archives (of the old "cminstall" kind).

Downloaded the FreeBSD archive, cminstalled it, and ran upgrade.py on the latest

Had to remove some code from ConvertPacking.m3 because Jay's C-backend can't compile
that for some reason.

ran boot1.py, which gave me a boot archive.  Note---if you've done this with boot1.py "c"
before, you have to delete all the derived dirs and start over, or you get a mess.

Moved the boot archive to the Linux machine.

Resurrected ConvertPacking.m3

Ran boot2.sh (or equiv) until I got everything built.

That worked.

So... some observations: 

.. I have a very recent build on ARM_LINUX, but wasn't able to cross-compile.  Word size

.. I now have three very recent builds: ARM_LINUX, AMD64_FREEBSD, and AMD64_LINUX.  What
precisely do I have to do to make boot archives out of these so other people might be spared
this painful process?  Very few archives on the elego site are up to date.  Some NT stuff and
some FreeBSD stuff.  Nothing else that I can see.


"Rodney Bates" writes:
>-Rodney Bates
>--- mika at async.caltech.edu wrote:
>From: mika at async.caltech.edu
>To: m3devel at elegosoft.com
>Subject: [M3devel] booting for AMD64_LINUX, continued...
>Date: Thu, 02 Jan 2014 15:15:37 -0800
>So I'm trying to get this working by cross-compiling from the ARM_LINUX to AMD64_LINUX by doing
>./boot1.py c AMD64_LINUX
>I get:
>new source -> compiling PklActionSeq.i3
>new source -> compiling ConvertPacking.m3
>"../src/pickle/ver2/ConvertPacking.m3", line 327: warning: not used (ReadWC21)
>"../src/pickle/ver2/ConvertPacking.m3", line 851: warning: not used (WriteWC21)
>*** runtime error:
>***    <*ASSERT*> failed.
>***    file "../src/M3C.m3", line 5890
> *** execution of [<function _BuildLocalFunction at 0x35e1f0>] failed ***
>   5887 PROCEDURE shift_right(self: T; type: IType) =
>   5888 (* s1.type := Word.Shift  (s1.type, -s0.type); pop *)
>   5889 BEGIN
>   5890     <* ASSERT cgtypeIsUnsignedInt[type] *>
>   5891     shift_left_or_right(self, type, "shift_right", ">>");
>   5892 END shift_right;
>Does anyone have a relatively recent working AMD64_LINUX installation?  I'd love a copy to try to boot from...
>I have one, but am out of the country right now and have no access to it.  
>I am waiting as I write to board the first airplane home, so will try to
>tar one up for you when I get there. 
>     Mika

More information about the M3devel mailing list