-
Notifications
You must be signed in to change notification settings - Fork 16
GCC support #12
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
GCC support #12
Conversation
Hi, thanks for all this - Lukash told me about you. Could you please join the Floatwheel Discord if you haven't already? There's a lcm-development channel. There's a few others who have been trying their luck with gcc support, I'd like them to try your changes. |
void main(void) doesn't compile with Keil Studio so I changed it back to int main(void and added a return 0; at the end |
Sorry I was absent for a bit, but reporting my findings:
Pure guesswork so far, but I suspect there's some timing/isr issue already, and the gcc build just makes it more apparent. |
Based on 46c875c, except it removes completely the usage of floor() we don't need.
TI*_Config are static to hk32f030m_tim.c
- Remove unnecessary linker flags - Pass -flto also as a linker flag - Remove warning on RWX segments with gcc 13
We're not using any libc function, so drop nano/nosys specs and use nostdlib directly. Stub _init() to get the default implementation of __libc_init_array.
Prevent a few delay loops from being elided
Fixed the main declaration and rebased. Untested (for the moment). |
This is based on #2 + #9, which works on current main branch with gcc-arm-noeabi 13.2.1.
Includes a few tweaks to fix the status bar as well (mentioned on #2).
Everything works as expected as far as I can see.
Special thanks to @bmigette for pyocd/pyOCD#1646 which got me going.