-
I started porting the latest newlib 4.4.0* to BareMetal using BareMetal-newlib (the port of 3.0.0) as a starting point. I patched the build system (which is a bit simpler than 3.0.0) and got it to start building, then I got stuck. Taking a different approach, I thought I'd look at the FAQ for newlib to see the recommended steps to porting to a new platform. It's FAQ 6 and the first step is to add setjmp/longjmp code. I don't see any code for setjmp in BareMetal-newlib. I have no idea why jumping is so important to newlib, but here we are as step one of the port and the FAQ says "give me jumping." Can setjmp/longjmp be easily implemented? I imagine it's not a lot of work but I'm new to BareMetal and OS development in general. I append the I thought I'd ask as the last thing I do before I go to bed in the hope that I'll get an answer in my morning... but it is Sunday, so we'll see. I'm in Eastern Australia, GMT+11 [*] latest version is 4.4.0.20231231 - there's no 4.4.0 version, so going with this
|
Beta Was this translation helpful? Give feedback.
Replies: 1 comment
-
Hello! I think it's just showing It's unfortunate that they shuffled things around so much in Newlib. Porting was easier in the earlier version. -Ian |
Beta Was this translation helpful? Give feedback.
Hello!
I think it's just showing
mn10300
(Matsushita?) orfr30
(RISC-V?) as examples for adding new hardware support. Newlib already has support forx86-64
so that is what should be used I think.It's unfortunate that they shuffled things around so much in Newlib. Porting was easier in the earlier version.
-Ian