<div>Hi!</div><div> </div><div> </div><div>(</div><div> </div><div><div><span style="background-color:#ffffff;color:#201f1e;font-size:15px">J.K.} you would like me to document how, to make it bootstra</span></div><div> </div></div><div>  Please, see this:</div><div><div>https://github.com/modula3/cm3/discussions/654</div></div><div> </div><div>)</div><div> </div><div> </div><div><div><span style="background-color:#ffffff;color:#201f1e;font-size:15px">J.K.} Please clarify?</span></div></div><div> </div><div> </div><div>I do exactly this:</div><div> </div><div>== ==</div><div><div>~$ cd /usr/local/cm3/bin</div><div>/usr/local/cm3/bin$ export PATH=/usr/local/cm3/bin:$PATH</div><div>/usr/local/cm3/bin$ g++ -g -pthread -c cm3-boot-unix64le-d5.11.1-20210610.cpp</div><div>/usr/local/cm3/bin$ g++ -g -pthread -o cm3 cm3-boot-unix64le-d5.11.1-20210610.o</div><div>== ==</div></div><div> </div><div>Edit  AMD64_LINUX as:</div><div>==</div><div><div><div>readonly TARGET = "AMD64_LINUX" % code generation target</div><div>readonly GNU_PLATFORM = "amd64-linux" % "cpu-os" string for GNU</div><div> </div><div>SYSTEM_CC = "gcc -gdwarf-2 -gstrict-dwarf -m64 -fPIC" % C compiler</div><div>SYSTEM_CXXC = "g++ -gdwarf-2 -gstrict-dwarf -m64 -fPIC" % C++ compiler</div><div> </div><div>readonly SYSTEM_ASM = "as --64" % Assembler</div><div> </div><div>% PIE debugging requires gdb 7.1 or newer, even for C</div><div>% see http://www.gnu.org/software/gdb/download/ANNOUNCEMENT</div><div>%   need be disable on Debian 8.11.1</div><div>% readonly POSITION_INDEPENDENT_EXECUTABLE = "-no-pie"</div><div> </div><div>include("AMD64.common")</div><div>include("Linux.common")</div></div></div><div>==</div><div> </div><div> </div><div>Run this:</div><div>== ==</div><div><div>/usr/local/cm3$ cd /usr/local/cm3/cm3/</div><div>/usr/local/cm3/cm3$ cd scripts/python/</div><div>/usr/local/cm3/cm3/scripts/python$ ./boot2min.py</div><div>== ==</div></div><div> </div><div> </div><div> </div><div>J.K.} <span style="background-color:#ffffff;color:#201f1e;font-size:15px">just remove the "rm -rm m3-sys/{m3cc,m3gdb}" in the "middle" and the two "c" near the end.</span></div><div> </div><div>I _will_ try do it.  </div><div> </div><div>But I didn't this on 2021-06-10</div><div> </div><div> </div><div>Best regards, Victor Miasnikov</div><div> </div><div> </div><div> </div><div>10.06.2021, 20:57, "Jay K" <jayk123@hotmail.com>:</div><blockquote><div><div style="color:rgb( 0 , 0 , 0 );font-family:'calibri' , 'helvetica' , sans-serif;font-size:12pt"><span style="background-color:#ffffff;color:#201f1e;font-size:15px">>  I was specifically skip step for switching to "C backend".</span></div><div style="color:rgb( 0 , 0 , 0 );font-family:'calibri' , 'helvetica' , sans-serif;font-size:12pt"> </div><div style="color:rgb( 0 , 0 , 0 );font-family:'calibri' , 'helvetica' , sans-serif;font-size:12pt"><span style="background-color:#ffffff;color:#201f1e;font-size:15px">Please clarify?</span><br /> </div><div style="color:rgb( 0 , 0 , 0 );font-family:'calibri' , 'helvetica' , sans-serif;font-size:12pt"><span style="background-color:#ffffff;color:#201f1e;font-size:15px">You mean, either you got it working, or you would like me to document how, to make it bootstrap to an m3cc-based setup?</span></div><div style="color:rgb( 0 , 0 , 0 );font-family:'calibri' , 'helvetica' , sans-serif;font-size:12pt"><span style="background-color:#ffffff;color:#201f1e;font-size:15px">I think, I but I didn't try it yet, just remove the "rm -rm m3-sys/{m3cc,m3gdb}" in the "middle" and the two "c" near the end.</span></div><div style="color:rgb( 0 , 0 , 0 );font-family:'calibri' , 'helvetica' , sans-serif;font-size:12pt"><span style="background-color:#ffffff;color:#201f1e;font-size:15px">That might just work.</span></div><div style="color:rgb( 0 , 0 , 0 );font-family:'calibri' , 'helvetica' , sans-serif;font-size:12pt"> </div><div style="color:rgb( 0 , 0 , 0 );font-family:'calibri' , 'helvetica' , sans-serif;font-size:12pt"><span style="background-color:#ffffff;color:#201f1e;font-size:15px"> - Jay</span></div><div><div> </div><div style="color:rgb( 0 , 0 , 0 );font-family:'calibri' , 'helvetica' , sans-serif;font-size:12pt"> </div><hr style="width:98%" /><div><font color="#000000" face="Calibri, sans-serif" style="font-size:11pt"><strong>From:</strong> <a href="mailto:vvm@tut.by" rel="noopener noreferrer">vvm@tut.by</a> <<a href="mailto:vvm@tut.by" rel="noopener noreferrer">vvm@tut.by</a>><br /><strong>Sent:</strong> Thursday, June 10, 2021 4:51 PM<br /><strong>To:</strong> Jay K <<a href="mailto:jayk123@hotmail.com" rel="noopener noreferrer">jayk123@hotmail.com</a>>; m3devel <<a href="mailto:m3devel@elegosoft.com" rel="noopener noreferrer">m3devel@elegosoft.com</a>><br /><strong>Subject:</strong> Re: [M3devel] single .cpp-based multi-platform release</font><div> </div></div><div><div>Hi!</div><div> </div><div> </div><div> </div><div>  But: I was specifically skip step for switching to "C backend".</div><div> </div><div> </div><div>Best regards, Victor Miasnikov </div><div> </div><div>10.06.2021, 19:40, "<a href="mailto:vvm@tut.by" rel="noopener noreferrer">vvm@tut.by</a>" <<a href="mailto:vvm@tut.by" rel="noopener noreferrer">vvm@tut.by</a>>:</div><blockquote><div>Hi!</div><div> </div><div> </div><div>> <span style="font-family:'calibri' , 'helvetica' , sans-serif;font-size:12pt">Please let me know how it goes</span></div><div> </div><div><span style="font-family:'calibri' , 'helvetica' , sans-serif;font-size:12pt"> It's have been successfully compiled to 'cm3' on Debian 8.11.1 x64.</span></div><div> </div><div><span style="font-family:'calibri' , 'helvetica' , sans-serif;font-size:12pt"> After that I run boot2min.py. All Ok.</span></div><div> </div><div><span style="font-family:'calibri' , 'helvetica' , sans-serif;font-size:12pt"> Sucefully compiled m3pp, m3gdb.</span></div><div> </div><div>( others don't tested yet)</div><div> </div><div>Best regards, Victor Miasnikov</div><div> </div><div> </div><div>10.06.2021, 18:58, "Jay K" <<a href="mailto:jayk123@hotmail.com" rel="noopener noreferrer" target="_blank">jayk123@hotmail.com</a>>:</div><blockquote><div><div style="color:rgb( 0 , 0 , 0 );font-family:'calibri' , 'helvetica' , sans-serif;font-size:12pt">I made a new kind of release, that I have been working toward a while.<div> </div><div> <a href="https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fmodula3%2Fcm3%2Freleases%2Ftag%2Funix64le-d5.11.1-20210610&data=04%7C01%7C%7C971bea5240234b35325a08d92c30030a%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637589406988022394%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=CPLFD3hRzk%2F2ZaQMLDm29EW8vim4ARaOkLKaR2QJEeE%3D&reserved=0" rel="noopener noreferrer" target="_blank">https://github.com/modula3/cm3/releases/tag/unix64le-d5.11.1-20210610</a> </div><div> </div> <div> </div><div>is one .cpp file, that should work across all 64bit little endian Unix targets.</div><div> (Mac, Linux, Solaris, amd64, arm64, riscv64, alpha, mips64el, powerpc64el etc.)</div><div> </div><div>The prerequisite then being "only" a C++ toolset, not a Modula-3 toolset.</div><div> </div><div>Please let me know how it goes.</div><div> </div><div>This can be adapted easily to build an m3cc-based system as well, from</div><div>the same single file bootstrap.</div><div> </div><div>I'd be interested if systems run out of memory or such compiling it.</div><div>In which case, maybe go back to a multi-file or few-file solution.</div><div> </div><div>32bit, big endian, Windows can be supported but will require</div><div>a bit more work and/or a separate file.</div><div> </div><div>There is still a lot that could be improved:</div><div> The directions should be clearer on prerequisites, like apt-get install build-essential etc.</div><div> Python2 should be updated to Python3, or use Modula-3's quake, etc.</div><div> The C++ bootstrap could build m3core and libm3, providing a more complete system.</div><div> It could be extended to be the entire system.</div><div> The self build could be optional (i.e. if m3core/libm3 split out in the bootstrap).</div><div> </div><div>Thank you,</div>  - Jay</div></div>,<p style="margin-bottom:0;margin-top:0">_______________________________________________<br />M3devel mailing list<br /><a href="mailto:M3devel@elegosoft.com" rel="noopener noreferrer" target="_blank">M3devel@elegosoft.com</a><br /><a href="https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fm3lists.elegosoft.com%2Fmailman%2Flistinfo%2Fm3devel&data=04%7C01%7C%7C971bea5240234b35325a08d92c30030a%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637589406988032389%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=gmjx5%2B095QG5ssWvxOH%2BZ9ECSOnUH16f471s6PfvXEI%3D&reserved=0" rel="noopener noreferrer" target="_blank">https://m3lists.elegosoft.com/mailman/listinfo/m3devel</a></p></blockquote></blockquote></div></div></div></blockquote>