How do I resolve conflicts Between MicroPython’s FATFS and Zephyr’s FATFS in nRF Connect SDK 2.9.0? #16885
Unanswered
DennisMoschina
asked this question in
Core Development
Replies: 1 comment 3 replies
-
Do you use FATFS? If not, best approach is probably to configure it out. At minimum either on Zephyr or on MicroPython side, or on both. |
Beta Was this translation helpful? Give feedback.
3 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
Hello everyone,
I’m currently integrating MicroPython into my Zephyr-based firmware using the nRF Connect SDK 2.9.0. I’ve encountered a build issue due to duplicate definitions arising from the FATFS implementation. Specifically, there are two different sets of FATFS source files:
Located in
micropython/lib/oofatfs/ff.c
and its corresponding header ff.h.Found in
modules/fs/fatfs/ff.c
(and the corresponding header) provided by Zephyr.These two implementations both provide functions such as
f_mount()
, leading to duplicate symbol errors when I try to build my firmware.The firmware is relatively complex, so I don't want to break something by using one implementation or the other. Is there a recommended method for resolving these duplicate symbol conflicts? Alternatively, is there a way to isolate one implementation (for example, building MicroPython as a separate static library or “namespacing” its FATFS functions) so that both can coexist without conflict?
Thanks in advance for any help or advice!
Beta Was this translation helpful? Give feedback.
All reactions