← index #17271PR #13360
Related · high · value 1.924
QUERY · ISSUE

cannot open source file "alloca.h" when trying to write a C module for MicroPython

openby marrowbusteropened 2025-05-09updated 2025-07-14
bugneeds-info

Port, board and/or hardware

rp2 port, Waveshare RP2040-PiZero

MicroPython version

MicroPython v1.25.0 on 2025-04-15; Raspberry Pi Pico with RP2040

Reproduction

Was working on a C module file for MicroPython and included this repo as a submodule but when it got time to #includeing the necessary header files, I got the above error. Apparently it's because alloca.h is only present on Linux and I'm using VSCode on Windows with the MicroPico extension. How shall I remedy this?

Expected behaviour

No response

Observed behaviour

Hovering over the #include "py/runtime.h" file leads to the error cannot open source file "alloca.h" being shown.

Additional Information

No, I've provided everything above.

Code of Conduct

Yes, I agree

CANDIDATE · PULL REQUEST

embed: Fix alloca include for FreeBSD and NetBSD.

mergedby darcagnopened 2024-01-05updated 2024-01-07

When building the embedded port on FreeBSD, I receive the following error:

fatal error: alloca.h: No such file or directory
   36 | #include <alloca.h>
      |          ^~~~~~~~~~

FreeBSD/NetBSD doesn't include alloca.h, but alloca() is provided via stdlib.h instead. This PR allows it to build properly on those platforms.

Keyboard

j / / n
next pair
k / / p
previous pair
1 / / h
show query pane
2 / / l
show candidate pane
c
copy suggested comment
r
toggle reasoning
g i
go to index
?
show this help
esc
close overlays

press ? or esc to close

copied