Die Python.h-Datei kann auf CentOS nicht gefunden werden

Lesezeit: 2 Minuten

Ich versuche, eine in C geschriebene Python-Erweiterung auf einem CentOS-Computer zu kompilieren. ich bekomme

error: Python.h: No such file or directory

Es funktioniert gut auf Ubuntu, wo ich python-dev mit apt-get installiert habe.

Ich habe versucht, python-devel mit zu installieren

yum install python-devel

ist aber schon installiert. Wie behebe ich diesen Fehler?

  • öffnen Sie ein Terminal und geben Sie ein find / -name Python.h 2>/dev/null kommt was?

    – pyCthon

    12. September 2012 um 2:28 Uhr


  • auch Welche Version von CentOS verwenden Sie?

    – pyCthon

    12. September 2012 um 2:30 Uhr

  • Ich hatte das gleiche Problem auf CentOS Linux release 7.1.1503 und yum install python-devel behoben.

    – Lqueryvg

    7. Februar 2016 um 17:39 Uhr

Benutzer-Avatar
Aditya Kresna Permana

Wenn Sie python3 verwenden, können Sie dafür python34-devel installieren

Es ist verfügbar auf EPEL-Repository und hat python34-devel-Paket verfügbar

Sie führen einfach diesen Befehl aus, um es zu installieren

yum install python34-devel

Hoffe es ist Hilfe

*Hinweis In diesem Moment python34-devel ist die aktuellste Version von Python 3.4

  • 2.7 => python-devel 3.4 => python34-devel 3.6 => python36-devel

    – Tamir Daniely

    21. Juli 2019 um 13:19 Uhr


Auf meinem System die Python.h Header-Datei befindet sich im Pfad /usr/include/python2.6/. Da dieser Pfad standardmäßig nicht vom Präprozessor durchsucht wird, müssen Sie ihn der Liste der zu durchsuchenden Pfade hinzufügen. Dies geschieht mit der -I Option für den Compiler wie folgt:

$ gcc -I/usr/include/python2.6 source.c -o program

Ändern Sie den obigen Pfad in den tatsächlichen Pfad auf Ihrem System. Sie finden es entweder mit der find Befehl wie in einem Kommentar vorgeschlagen, von mit dem locate Befehl, wenn es installiert ist.

  • ah, Entschuldigung, ich verstehe, es ist die C-Quelldatei, Entschuldigung

    – ehacinom

    25. September 2014 um 3:14 Uhr

  • zum CentOS 7.4
    • Python 3.6.6 : yum -y install python36-devel
    • Python 2 : yum -y install python-devel
  • zum Ubuntu
    • Python 3.6: apt-get install libpython3.6-dev

  • yum -y install python3-devel installiert die neueste verfügbare Python3-Version für diese Version von CentOS.

    – Matt

    10. Januar 2020 um 18:15 Uhr


  • Ich konnte das Problem lösen und mein Docker-Image von erstellen yum -y install python3-devel. Vorher habe ich installiert python3-dev und ich konnte mein Image aufbauen. Gibt es in letzter Zeit eine Namensänderung?

    – panz

    6. Dezember 2021 um 21:27 Uhr

Für Centos 8+

dnf install -y python3-devel

Wenn Sie Centos 8 ausführen, können Sie Folgendes verwenden:

dnf install -y python38-devel

dnf installieren -y python3-devel hat bei mir nicht funktioniert.

Benutzer-Avatar
ScalaWilliam

Ich hatte ein ähnliches Problem, bei dem Standard-Python 2.7 war, aber Pip gegen 3.4 lief und ich 2.7 verwenden wollte. So tat ich: yum remove python34-pip und yum install python2-pip. Ich habe es gelöst!

Benutzer-Avatar
Sinto

Ich hatte auch ähnliches Problem.

./python/py_defines.h:39:20: fatal error: Python.h: No such file or directory

Während der Find-Befehl zeigte, dass die python.h existiert.

Die obigen Lösungen haben nicht funktioniert, aber die folgende Befehlsausführung hat bei mir funktioniert.

yum install python27-python-devel.x86_64

Nicht viel anders, aber viel Zeit verschwendet.

1385860cookie-checkDie Python.h-Datei kann auf CentOS nicht gefunden werden

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy