<div dir="auto">This was buried in another thread and I thought it was best separate.<div dir="auto"><br></div><div dir="auto">There are now two options. LLVM Rust and GCC Rust.</div><div dir="auto"><br></div><div dir="auto">LLVM Rust is the more mature and commonly used of the two. LLVM is supposed to work on at least SPARC and RISC-V. There are cross build instructions for Linux to another CPU Linux. There might be some real embedded cross instructions but I didn't find them I didn't invest a lot looking so finding out the cross status of their tool chain and instructions is a first step. We haven't used LLVM on ARM AFAIK but I would consider testing that to be able to use Rust in an architecture that they use already. Reduces one odd risk.</div><div dir="auto"><br></div><div dir="auto">Assuming you can figure out how to build Rust cross for an embedded target, it should just be a matter of glueing their runtime to our POSIX APIs. That should be similar to Linux. Then testing and debugging.</div><div dir="auto"><br></div><div dir="auto">Overall I put the knowledge gap on the build process and likely an effort sink in debugging and testing. Quite likely once a few years work, most will work except for specific features. Fix one test and a handful more will pass. Repeat until all passing </div><div dir="auto"><br></div><div dir="auto">GCC on Rust isn't as mature but is worth tracking. When the authors submitted FSF assignment paperwork, I emailed them. They are using it embedded but I got the impression they didn't want us to touch it soon.  </div><div dir="auto"><br></div><div dir="auto">Personally I'd eventually love to see both but I would focus on the standard LLVM Rust and how to compile it cross to a non-Linux target. That would give a procedure more like a cross to RTEMS. Maybe they have instructions and from there it should be straightforward plodding.</div><div dir="auto"><br></div><div dir="auto">A bit of research and perhaps email to their community to ask some questions would help size up the cross build situation.</div><div dir="auto"><br></div><div dir="auto">--joel</div></div>