<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 12pt;
font-family:Calibri
}
--></style></head>
<body class='hmmessage'><div dir='ltr'><pre> > Fatal Error: unrecognized target machine: TARGET = ARMEL_LINUX<br><br><br>Darn. That suggests I didn't get as far as..<br>update m3-sys/m3middle/src/Target.i3 and Target.m3.<br><br><br> The three facts needed are: <br>   endian -- it is somewhat automatic, e.g. I386_anything is little endian  <br>   word size -- will default to 32 unless "64" is in the name  <br>   jmpbuf size -- an overestimate is ok, or use <a href="https://modula3.elegosoft.com/cgi-bin/cvsweb.cgi/cm3/scripts/config/jmpbuf.c" target="_blank">https://modula3.elegosoft.com/cgi-bin/cvsweb.cgi/cm3/scripts/config/jmpbuf.c</a> <br>     This is particularly high on the list of things to fix/remove. <br><br><br>You might get a few similar errors around the tree.<br>Historically there were target lists in a few places,<br>but I have reduced them significantly, i.e. switching on kernel<br>and processor instead of kernel/processor cross product.<br><br><br>The main other piece of code that changes for almost every<br>target is getting the instruction counter out of a context_t<br>for faults (except NetBSD which abstracts it).<br>See <a href="https://modula3.elegosoft.com/cgi-bin/cvsweb.cgi/cm3/m3-libs/m3core/src/runtime/POSIX/RTSignalC.c" target="_blank">https://modula3.elegosoft.com/cgi-bin/cvsweb.cgi/cm3/m3-libs/m3core/src/runtime/POSIX/RTSignalC.c</a><br>But it looks like I already handled Linux/arm.<br><br><br>  <br> - Jay<br></pre><br><br><div><hr id="stopSpelling">From: jay.krell@cornell.edu<br>To: mika@async.caltech.edu<br>CC: m3devel@elegosoft.com<br>Subject: RE: [M3devel] building CM3 on a Raspberry Pi?<br>Date: Mon, 14 Oct 2013 16:59:21 +0000<br><br>

<style><!--
.ExternalClass .ecxhmmessage P {
padding:0px;
}

.ExternalClass body.ecxhmmessage {
font-size:12pt;
font-family:Calibri;
}

--></style>
<div dir="ltr"><pre> > Fatal Error: unrecognized backend mode: C<br><br><br>Make sure you ./update.py your main toolset first.<br>Also, while the C backend was working a year ago, for quite<br>a while I did not change the builder to know about it directly.<br>I was going via m3cgcat.<br>So you need to be fairly current, or else modify the<br>config files a different way, and have it be slower.<br><br><br> - Jay<br></pre><br><br><div>> To: jay.krell@cornell.edu<br>> CC: m3devel@elegosoft.com<br>> Subject: Re: [M3devel] building CM3 on a Raspberry Pi?<br>> Date: Mon, 14 Oct 2013 09:40:08 -0700<br>> From: mika@async.caltech.edu<br>> <br>> Jay writes:<br>> >./../gcc-4.7/libiberty/stack-limit.c:52: error: `u_quad_t' undeclared (first=<br>> > use in this function)if [ x"" !=3D x ]; then \<br>> ><br>> ><br>> >Maybe I removed too much. I.e. libquadmath. That should be easy to fix and/o=<br>> >r switch to C backend.<br>> ><br>> ><br>> >I forgot: besides switching the config file: add the parameter "c" to boot1.=<br>> >py.<br>> ><br>> ><br>> <br>> If I put in config-no-install/ARMEL_LINUX<br>> <br>> M3_BACKEND_MODE="C"<br>> <br>> and run<br>> <br>> ./boot1.py c ARMEL_LINUX<br>> <br>> the following happens:<br>> <br>> ...<br>> rm -f /nfs/site/home/mnystroe/work/cm3/bin/cm3.cfg<br>> rm -f /nfs/site/home/mnystroe/work/cm3/bin/cm3cfg.common<br>> rm -f /nfs/site/home/mnystroe/work/cm3/bin/gnuld.common<br>> cp -Pv /nfs/site/disks/wdisk.133/mnystroe/cm3-anon-cvs/cm3/m3-sys/cminstall/src/config-no-install/cm3.cfg /nfs/site/home/mnystroe/work/cm3/bin/cm3.cfg<br>> == package /nfs/site/disks/wdisk.133/mnystroe/cm3-anon-cvs/cm3/m3-win/import-libs ==<br>> <br>>  +++ /nfs/site/home/mnystroe/work/cm3/bin/cm3    -build -override -DROOT=/nfs/site/disks/wdisk.133/mnystroe/cm3-anon-cvs/cm3 -boot -keep -DM3CC_TARGET=ARMEL_LINUX +++<br>> --- building in ARMEL_LINUX ---<br>> <br>>  ==> /nfs/site/disks/wdisk.133/mnystroe/cm3-anon-cvs/cm3/m3-win/import-libs done<br>> <br>> == package /nfs/site/disks/wdisk.133/mnystroe/cm3-anon-cvs/cm3/m3-libs/m3core ==<br>> <br>>  +++ /nfs/site/home/mnystroe/work/cm3/bin/cm3    -build -override -DROOT=/nfs/site/disks/wdisk.133/mnystroe/cm3-anon-cvs/cm3 -boot -keep -DM3CC_TARGET=ARMEL_LINUX +++<br>> --- building in ARMEL_LINUX ---<br>> <br>> <br>> Fatal Error: unrecognized backend mode: C<br>> <br>>  *** execution of [<function _BuildLocalFunction at 0x2aaaab5728c0>] failed ***<br>> <br>> <br>> But if I remove M3_BACKEND_MODE from ARMEL_LINUX and run the same command, the following:<br>> <br>> ...<br>> rm -f /nfs/site/home/mnystroe/work/cm3/bin/cm3cfg.common<br>> rm -f /nfs/site/home/mnystroe/work/cm3/bin/gnuld.common<br>> cp -Pv /nfs/site/disks/wdisk.133/mnystroe/cm3-anon-cvs/cm3/m3-sys/cminstall/src/config-no-install/cm3.cfg /nfs/site/home/mnystroe/work/cm3/bin/cm3.cfg<br>> == package /nfs/site/disks/wdisk.133/mnystroe/cm3-anon-cvs/cm3/m3-win/import-libs ==<br>> <br>>  +++ /nfs/site/home/mnystroe/work/cm3/bin/cm3    -build -override -DROOT=/nfs/site/disks/wdisk.133/mnystroe/cm3-anon-cvs/cm3 -boot -keep -DM3CC_TARGET=ARMEL_LINUX +++<br>> --- building in ARMEL_LINUX ---<br>> <br>>  ==> /nfs/site/disks/wdisk.133/mnystroe/cm3-anon-cvs/cm3/m3-win/import-libs done<br>> <br>> == package /nfs/site/disks/wdisk.133/mnystroe/cm3-anon-cvs/cm3/m3-libs/m3core ==<br>> <br>>  +++ /nfs/site/home/mnystroe/work/cm3/bin/cm3    -build -override -DROOT=/nfs/site/disks/wdisk.133/mnystroe/cm3-anon-cvs/cm3 -boot -keep -DM3CC_TARGET=ARMEL_LINUX +++<br>> --- building in ARMEL_LINUX ---<br>> <br>> <br>> Fatal Error: unrecognized target machine: TARGET = ARMEL_LINUX<br>> <br>>  *** execution of [<function _BuildLocalFunction at 0x2aaaab5728c0>] failed ***<br>> <br>> <br></div>                                     </div></div>                                        </div></body>
</html>