Cannot build due to missing Python.h

I am following the quick-start instructions from:

https://review.mlplatform.org/plugins/gitiles/ml/ethos-u/ml-embedded-evaluation-kit/+/HEAD/docs/quick_start.md

But when I ran step 4 it failed with the error below:

gcc -pthread -Wno-unused-result -Wsign-compare -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DNDEBUG -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -D_GNU_SOURCE -fPIC -fwrapv -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -D_GNU_SOURCE -fPIC -fwrapv -O2 -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fstack-protector-strong -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -D_GNU_SOURCE -fPIC -fwrapv -fPIC -DNPY_NO_DEPRECATED_API=NPY_1_9_API_VERSION -I/home/ramzie/u55_experiments/ml-embedded-evaluation-kit/resources_downloaded/env/include -I/usr/include/python3.9 -I/home/ramzie/u55_experiments/ml-embedded-evaluation-kit/resources_downloaded/env/lib64/python3.9/site-packages/numpy/core/include -c ethosu/mlw_codec/mlw_codecmodule.c -o build/temp.linux-x86_64-3.9/ethosu/mlw_codec/mlw_codecmodule.o
ethosu/mlw_codec/mlw_codecmodule.c:20:10: fatal error: Python.h: No such file or directory
20 | #include <Python.h>
| ^~~~~~~~~~
compilation terminated.
error: command ‘/usr/bin/gcc’ failed with exit code 1

Any idea how I can get passed this? Do I need to have Python.h available in a specific location? I am building on Fedora Linux x86_64 Host

Edit: I noticed an earlier error below:

equirement already satisfied: lxml>=4.5.1 in ./resources_downloaded/env/lib/python3.9/site-packages (from ethos-u-vela==3.2.0) (4.7.1)
Using legacy ‘setup.py install’ for ethos-u-vela, since package ‘wheel’ is not installed.
Installing collected packages: ethos-u-vela
Running setup.py install for ethos-u-vela: started
Running setup.py install for ethos-u-vela: finished with status ‘error’
ERROR: Command errored out with exit status 1:

That seems to indicate I need python package “wheel” but even after I successfully added that with pip I still get both errors.

SOLUTION: Installing python development using below command fixed the issue

sudo dnf install python3.9-devel

Hi @ramzie,

Thank you for pointing this out. We will add python-dev package to the list of prerequisites.