On May 2, 2025, at 13:07, Alan Mackenzie <[email protected]> wrote:
Hello, Eli.
On Fri, May 02, 2025 at 13:47:02 -0400, Eli Schwartz wrote:
Compiling rust officially requires building the pre 1.0 version of rust,
itself written in ocaml, and then building *every* version of rust since
then, one by one, in turn, without skipping a single one. That is over
80 different versions of rust, you need to compile all of them in order
to get to the current one.
No thanks! There's only so much time left before the Sun becomes a red giant. But this attitude must limit the portability of rust to different processors, such as are found in embedded systems.
For embedded systems, I assume you'd normally be cross-compiling. So all you'd need to get started is a current rust binary package for your build system (let's say x86-64-linux). With that, you can build a cross-compiler x86-64-linux->toaster-none,
and build your toaster control software with it. You wouldn't normally want to be running the rust compiler on your toaster at all, but if it somehow has enough memory and storage for that, then you should be able to use your cross-compiler to build a
native toaster->toaster rust compiler, and copy it to the toaster. And if you then have the patience to rebuild rust natively on the toaster, at this point you can.
But by no means should you need to build 80 versions of rust on the toaster.
<html><head><meta http-equiv="content-type" content="text/html; charset=us-ascii"></head><body style="overflow-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;"><br id="lineBreakAtBeginningOfMessage"><div><br><blockquote type="
cite"><div>On May 2, 2025, at 13:07, Alan Mackenzie <
[email protected]> wrote:</div><br class="Apple-interchange-newline"><div><meta charset="UTF-8"><span style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 11px; font-style: normal; font-
variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none; float: none; display: inline !
important;">Hello, Eli.</span><br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 11px; font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform:
none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;"><br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 11px; font-style: normal; font-variant-caps: normal; font-weight: 400; letter-
spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;"><span style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 11px;
font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none; float: none;
display: inline !important;">On Fri, May 02, 2025 at 13:47:02 -0400, Eli Schwartz wrote:</span><br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 11px; font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing:
normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;"><br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 11px; font-style:
normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;"><blockquote type="cite"
style="font-family: Helvetica; font-size: 11px; font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-
spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;">Compiling rust officially requires building the pre 1.0 version of rust,<br>itself written in ocaml, and then building *every* version of rust since<br>then, one by one, in turn,
without skipping a single one. That is over<br>80 different versions of rust, you need to compile all of them in order<br>to get to the current one.<br></blockquote><br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 11px; font-style:
normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;"><span style="caret-
color: rgb(0, 0, 0); font-family: Helvetica; font-size: 11px; font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -
webkit-text-stroke-width: 0px; text-decoration: none; float: none; display: inline !important;">No thanks! There's only so much time left before the Sun becomes a red</span><br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size:
11px; font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;"><
span style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 11px; font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-
spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none; float: none; display: inline !important;">giant. But this attitude must limit the portability of rust to different</span><br style="caret-color: rgb(0, 0, 0); font-family:
Helvetica; font-size: 11px; font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-
decoration: none;"><span style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 11px; font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-
space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none; float: none; display: inline !important;">processors, such as are found in embedded systems.</span><br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-
size: 11px; font-style: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;"
<br></div></blockquote></div><div><br></div><div>For embedded systems, I assume you'd normally be cross-compiling. So all you'd need to get started is a current rust binary package for your build system (let's say x86-64-linux). With that,
you can build a cross-compiler x86-64-linux->toaster-none, and build your toaster control software with it. You wouldn't normally want to be running the rust compiler on your toaster at all, but if it somehow has enough memory and storage for
that, then you should be able to use your cross-compiler to build a native toaster->toaster rust compiler, and copy it to the toaster. And if you then have the patience to rebuild rust natively on the toaster, at this point you can.</div><div><
</div><div>But by no means should you need to build 80 versions of rust on the toaster.</div><div><br></div></body></html>
--- SoupGate-Win32 v1.05
* Origin: fsxNet Usenet Gateway (21:1/5)