Closed ggVGc closed 2 years ago
Thanks for this. Out of curiosity, what are you linking in to Kaleidoscope that's only available precompiled?
@obra As the trend goes, I of course wanted to start writing some keyboard firmware in Rust :) The easiest way seemed to be through building a static library for AVR and linking it into Kaleidoscope. I only did a very basic test so far, but it seems like it linked and ran correctly.
That's pretty cool. If you end up with a writeup, I know some folks would love to read about it and possibly experiment with it. There's been some discussion of the desire to support parts of the firmware in Rust by the devteam on our Discord. (https://discord.gg/CWTcra38 is an invite link if you want)
On Fri, Mar 25, 2022 at 1:54 AM Valter Sundström @.***> wrote:
@obra https://github.com/obra As the trend goes, I of course wanted to start writing some keyboard firmware in Rust :) The easiest way seemed to be through building a static library for AVR and linking it into Kaleidoscope. I only did a very basic test so far, but it seems like it linked and ran correctly.
— Reply to this email directly, view it on GitHub https://github.com/keyboardio/Kaleidoscope-Bundle-Keyboardio/pull/45#issuecomment-1078794568, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAALC2HSFZLN2OGYMUV5WNLVBV5KRANCNFSM5ROD36NQ . You are receiving this because you were mentioned.Message ID: @.***>
Forgot to update here, but this is how far my experiments got before life took over: https://github.com/ggVGc/Rustreus It's some kind of proof of concept, but I never got to actually writing any functionality. It's a project for SomeDay(tm) when the fleeting resource of extra time is available.
In order to use precompiled libraries in plugins, the arduino core must take
compiler.libraries.ldflags
into account. As it is now, any usage of theprecompiled
orldflags
options oflibrary.properties
in a plugin ends up being ignored when linking.As a side-note, I also see that
compiler.ldflags
is ignored, but I did not want to touch that in this PR since I'm not sure if that's on purpose or not.