En cherchant une solution au problème hongrois , j'ai trouvé ce lien GitHub .
J'ai parcouru le readme.md
dossier et j'ai effectué tout ce qui y est décrit. Après avoir copié hungarian.so
dans mon répertoire de travail, lorsque j'ai essayé de compiler hungarian.cpp
avec make hungarian
, j'ai obtenu cette sortie:
anupam@JAZZ:~/Python/hungarian-master$ make hungarian
g++ hungarian.cpp -o hungarian
hungarian.cpp:7:20: fatal error: Python.h: No such file or directory
#include "Python.h"
^
compilation terminated.
make: *** [hungarian] Error 1
J'ai trouvé cette question connexe sur Stack Overflow , mais la réponse n'a pas fonctionné pour moi.
Je suis très nouveau sur GitHub, je ne sais pas comment ajouter des modules g++
. Quelqu'un peut-il m'aider avec cela et que faire ensuite?
sudo apt-get install python-dev
n'a donc pas fonctionné?Réponses:
Après avoir consulté https://github.com/hrldcpr/hungarian/blob/master/hungarian.cpp , il semble que vous ayez besoin des deux:
Installez donc les packages suivants:
Pour identifier les packages manquants (ceux fournissant les en-têtes), consultez packages.ubuntu.com .
la source
python-dev
vous en avez maintenantlibpython2.7-dev
ainsi que sa dépendancepython-dev
. Le problème résolu n'est-ce pas?dpkg-query -L libpython2.7-dev | grep Python.h
Pour Ubuntu 15.10 et Python 3:
la source
Ceci est le code de python extension avec C . Pas besoin d'utiliser
make
. Python se chargera de lacpp
compilation du code avec les indicateurs appropriés.Vous devez d'abord avoir des fichiers d'en-tête et une bibliothèque statique. Installez-les comme,
Suivez maintenant ces commandes pour exécuter
example.py
dans votre code.la source
hungarian.cpp
et un exemple pour exécuter une fonction de base de celui-ci danseample.py
. Si vous en avez besoin, vous devrez peut-être écrire votre propre code.