Python Development Headaches: Resolving "fatal error: Python.h: No such file or directory"
Upon attempting to build a shared library using a C extension, the "fatal error: Python.h: No such file or directory" message surfaces, leaving you perplexed. Despite locating Python.h on your machine, the issue persists.
The culprit lies in the missing header files and static libraries required for Python development. To address this, utilize your package manager and install these dependencies system-wide.
Distribution-Specific Commands:
Ubuntu/Debian (apt):
sudo apt-get install python-dev (for Python 2.x) sudo apt-get install python3-dev (for Python 3.x)
CentOS/RHEL (yum):
sudo yum install python-devel (for Python 2.x) sudo yum install python3-devel (for Python 3.x)
Fedora (dnf):
sudo dnf install python2-devel (for Python 2.x) sudo dnf install python3-devel (for Python 3.x)
openSUSE (zypper):
sudo zypper in python-devel (for Python 2.x) sudo zypper in python3-devel (for Python 3.x)
Alpine (apk):
sudo apk add python2-dev (for Python 2.x) sudo apk add python3-dev (for Python 3.x)
Cygwin (apt-cyg):
apt-cyg install python-devel (for Python 2.x) apt-cyg install python3-devel (for Python 3.x)
Note: For specific Python minor versions (e.g., 3.11), you may need to install additional packages (e.g., python3.11-dev).
The above is the detailed content of Why Can't My C Extension Find Python.h?. For more information, please follow other related articles on the PHP Chinese website!